FragmentA는 일시 중지되었으므로 직접 업데이트 할 수 없습니다.
//RC_FRAGMENT_B is just an int constant to identify the result later
fragmentB.setTargetFragment(FragmentA.this, RC_FRAGMENT_B);
및 구현 :
을 당신이 할 수있는 장소에서 당신이 FragmentB 추가 시작하는
DialogFragment을 FragmentB하고 그 결과 (에 startActivityForResult 같은 많은) FragmentA에서
를 얻을 수 targetFragment를 사용하다 당신이 완료 FragmentB에서 다음
public static final int RC_FRAGMENT_B = 1666;
public static final int RC_SUCCESS = 1888;
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == RC_FRAGMENT_B && resultCode == RC_SUCCESS) {
//change tab, etc.
}
}
, 사용 :
Fragment target = getTargetFragment();
if (target != null) {
//FragmentA.RC_SUCCESS result code needs to be a constant indicate to FragmentA what to do
target.onActivityResult(getTargetRequestCode(), FragmentA.RC_SUCCESS, getActivity().getIntent());
}
I 조각 B를 대화 상자로 변환 할 수 없습니다. B 단원에서는 사용자가 돈을 청구하는 웹보기입니다. 프래그먼트가 표시되는 시점을 알 수있는 방법이 있습니까? – Nitish
예, onResume 메소드이지만 FragmentA.onResume은 FragmentB.onPause (너무 늦음) 이후까지 발생하지 않습니다. 조각 대화 상자 안에 원하는 것을 넣을 수 있습니다. AlertDialog와 같지 않습니다. –