2013-09-22 45 views
8

Tôi có một Fragment mà các cuộc gọi Hoạt động khác sử dụng:Android: Cách nhận kết quả trả về từ hoạt động khi gọi từ Fragment?

ProductEditionMaintenanceActivity.class); 
Bundle extras = new Bundle(); 
extras.putString("productCode", productCode); 
extras.putInt("productEditionID", 0); 
intent.putExtras(extras); 
getActivity().startActivityForResult(intent, 1); 

và trở về từ hoạt động:

Intent resultIntent = new Intent(); 
setResult(Activity.RESULT_OK, resultIntent); 
finish(); 

Tôi cố gắng để sử dụng sau trong Fragment

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
    //Do something 
} 

Tuy nhiên , Tôi đoán ý định được tạo thông qua tham chiếu của Hoạt động gốc của Phân đoạn do đó onActivityResult trên Mảnh vỡ không được gọi. Nếu trường hợp đó xảy ra, tôi cần phải làm gì để đoạn có được kết quả từ Hoạt động vui mừng?

Trả lời

11

Các phân đoạn onActivityResult sẽ được gọi sau SAU các hoạt động của máy chủ onActivityResult miễn là super.onActivityResult được gọi từ hoạt động của máy chủ. Xem https://stackoverflow.com/a/6147919/552902 để biết thêm chi tiết