Android 返回到BackPress上活动的片段
我尝试了以下代码来从片段扩展片段移动到活动扩展活动Android 返回到BackPress上活动的片段,android,android-fragments,android-activity,android-fragmentactivity,Android,Android Fragments,Android Activity,Android Fragmentactivity,我尝试了以下代码来从片段扩展片段移动到活动扩展活动 Intent mIntent = new Intent(getActivity(), UserProfile.class); Bundle bundle = new Bundle(); bundle.putBoolean(Constant.isFromChatScreen, false); mIntent.putExtras(bundle); st
Intent mIntent = new Intent(getActivity(), UserProfile.class);
Bundle bundle = new Bundle();
bundle.putBoolean(Constant.isFromChatScreen, false);
mIntent.putExtras(bundle);
startActivity(mIntent);
在BaseActivity.java
中,我有片段A
、片段B
、片段C
。从片段A
我移动到Userprofile.java
现在我想返回到片段A
我该怎么做呢?在进行片段事务时,只需在提交之前使用addToBackStack(null)
,然后按下“上一步”按钮,就可以返回到片段。查看谷歌文档中的findFragmentByTag()
在调用FragmentTransaction中的片段时,您也可以使用addToBackStack(),但任何想知道答案的人都可以这样做:
@Override
public void onBackPressed() {
finish();
}
finish()。片段托管在活动中,那么为什么不交换片段并通过后堆栈操作它们呢?在BaseActivity.java中,我有片段A、片段B、片段C。从片段A我移到了Userprofile.java,现在我想移回片段A。startActivityForResult()
?我想在backpressed上执行只要在backpressed上完成UserProfile活动他正在开始一个新活动。你必须考虑到活动的生命周期是如何变化的。你可以看到Hadi Samadbin的评论,其中的链接说我的答案是正确的。他正在开始一项新活动,如果他按下“后退”按钮,他将进入最后一项活动(包括片段a的活动),如果他将添加到堆栈中,他将看到片段a,因为这是他在开始新活动之前使用的最后一个片段。