我有一个带有项目列表的导航抽屉,然后点击列表项打开 另一个事件列表(使用自定义列表适配器)[第一个片段]。
点击任何一个列表项我想打开一个显示其详细信息的片段[第2片段]。
所以我想将项目点击的位置从第1个碎片转移到第2个碎片, 我有第二个碎片的静态数据,我如何转移该位置?
我试过界面, 但每次我做任何事情我都会在logcat中收到错误,因为第一个片段没有附加到主要活动。
我已经创建了布局(并将它们称为片段),并且没有,因此没有ID可以获得“getFragmentById”中的主要活动。 ?谢谢。
答案 0 :(得分:0)
您可以使用片段中的getActivity()
来查找片段所在的FragmentActivity
。
然后,您可以使用FragmentActivity.findFragmentByTag()
查找此Actvity
中的其他片段。 `
答案 1 :(得分:0)
在片段的constructor
中传递数据
FragmentManager fm = SliderActivity.this
.getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
HomeFragment fragment = new HomeFragment(your_data);
ft.replace(R.id.content_fragment, fragment, getResources()
.getString(R.string.homeText));
ft.commit();
HomeFragment
中的设置了constructor
HomeFragment(String value){
this.value=value;
}