Android:获取父视图';从TabHost内的片段创建框架布局
我有一个Android:获取父视图';从TabHost内的片段创建框架布局,android,android-fragments,android-tabhost,android-fragmentactivity,fragment-tab-host,Android,Android Fragments,Android Tabhost,Android Fragmentactivity,Fragment Tab Host,我有一个FragmentActivity,其中我显示了两个片段,片段a和片段B。在片段A中,我有另一个带有制表符的片段。我使用经典的TabHost完成了这项工作。在这个TabHost中,我还有两个片段,它们有一个列表视图。现在我想要的是单击listitem我想要替换父FragmentActivity的片段B中的内容。请帮助我实现这一目标。到目前为止,我已经试过以下方法 1. View mContainer = (View)getActivity().findViewById(R.id.right
FragmentActivity
,其中我显示了两个片段
,片段a
和片段B
。在片段A
中,我有另一个带有制表符的片段。我使用经典的TabHost
完成了这项工作。在这个TabHost
中,我还有两个片段
,它们有一个列表视图
。现在我想要的是单击listitem
我想要替换父FragmentActivity
的片段B
中的内容。请帮助我实现这一目标。到目前为止,我已经试过以下方法
1. View mContainer = (View)getActivity().findViewById(R.id.rightpane);
2. ViewGroup mContainer = (ViewGroup)getView().getParent();
3. Activity rrlist = ((RRPatientList)getParentFragment()).getActivity().getParent();
View mContainer = (View) rrlist.findViewById(R.id.rightpane);
ResultDetailView rdl = new ResultDetailView();
rdl.setArguments(args);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(mContainer.getId(), rdl);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
ft.addToBackStack(null);
ft.commit();
没有工作,我收到NullPointerException
或找不到ID的视图******
错误
请参考屏幕截图了解更多信息
在活动中创建方法(如:updateFragment)以更新片段B。从片段A的子片段调用该方法(updateFragment),然后该方法(updateFragment)更新片段B。
-它将帮助您更新父活动中的片段B
-它将帮助您从片段A的子片段调用父活动方法,但如何从
TabHost
的ListFragment
获取FragmentActivity
。当只有两个层次结构(FragmentActivity->Fragment)时,代码可以工作,但我有FragmentActivity->Fragment->Fragment。在这个场景中如何实现?相同的场景适用于n级片段,因为您正在一个父活动中添加所有片段,对吗??那么基础就是活动。所以您可以从任何片段调用activity方法。