首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在当前碎片之前确定碎片

在当前碎片之前确定碎片
EN

Stack Overflow用户
提问于 2014-11-03 10:48:34
回答 2查看 69关注 0票数 0

假设有片段A和片段B,如果我单击片段A上的按钮,它就会导致片段C。如果我单击片段B上的按钮,它也会导致片段C。现在我想检测片段C是从哪个片段创建的。有可能吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-03 11:02:43

您可以简单地设置一个变量,并将其通过包传递给C片段,同时执行如下所示的FragmentTransaction

代码语言:javascript
复制
Fragment fr=new FragmentA();
FragmentManager fm=getFragmentManager();
FragmentTransaction ft=fm.beginTransaction();
Bundle args = new Bundle();
args.putString("from", "fragmentA");
fr.setArguments(args);
ft.replace(R.id.content_frame, fr);
ft.commit(); 

你可以像这样在片段C中检索相同的内容

代码语言:javascript
复制
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
    Bundle savedInstanceState) {
    String strtext = getArguments().getString("from"); // with value of strtext,you will get to know from which fragment you come from   
    return inflater.inflate(R.layout.fragment, container, false);
}
票数 2
EN

Stack Overflow用户

发布于 2014-11-03 11:40:19

代码语言:javascript
复制
##You can pass a boolean value and toggle between two fragments.##
Bundle args = new Bundle();
args.putBoolean("key",true) // for fragement A
fr.setArguments(args);
ft.replace(R.id.content_frame, fr);
ft.commit(); 
if(getArguments().getBoolean("key");)
Log.e(LOGTAG,"FROM FRAGMENT A");
else
Log.e(LOGTAG,"FROM FRAGMENT B");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26712594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档