I have four Fragment A B C D.When I perform jumping from A to B and B to C and C to D. How can I get the result of D to B when I press back key?
Asked
Active
Viewed 464 times
2
-
http://stackoverflow.com/a/5984892/1160282 Check this – SilentKiller Dec 19 '12 at 12:13
-
Do you want to send information back to B from D or do you just want to show B? – James McCracken Dec 19 '12 at 14:13
1 Answers
1
FragmentD:
Create an interface in FragmentD.
OnBackListener mback;
public interface OnBackListener {
public void onBackClicked();
}
@Override
public void onAttach(Activity activity) {
try {
mback = (OnBackListener ) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString()
+ " must implement OnBackListener");
}
super.onAttach(activity);
}
public void methodCall()
{
mback.onBackClicked()
}
then
Parent Activity
Implement the OnBackListener interface that we created in FragmentD.
public class MyActivity extends FragmentActivity implements OnBackListener {
// overriding OnBackListener interface method
@Override
public void onBackClicked() {
//calling fragmentb
}
//Backkey event
@Override
public void onBackPressed()
{
super.onBackPressed();
fragmentd.methodCall();
}
}
In the way, you will get result of fragmentD to fragmentB.

Androider
- 803
- 6
- 18
-
I want to use back key to perform jumping from D to B,however the back key was controllered by FragmentActivity.So the interface call onBackClicked() won't be done. – beiliubei Dec 19 '12 at 13:13
-
Hi Androider, is there any easier way if I want the result of D to C when I press back key? – abhishek kumar gupta Jun 04 '13 at 15:12