Android:从TabHost中的Fragment获取父视图的Framelayout

时间:2015-12-21 19:34:02

标签: android android-fragments android-tabhost android-fragmentactivity fragment-tab-host

我有FragmentActivity我在其中显示两个FragmentsFragment AFragment B。在Fragment A我有另一个带标签的片段。我使用经典TabHost完成了这项工作。在此TabHost我还有2个Fragments,其中ListView。现在我想要的是点击listitem我要替换父Fragment B的{​​{1}}中的内容。请帮我实现这个目标。到目前为止,我已尝试过以下内容。

FragmentActivity

没有任何效果,我收到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错误。

请参阅屏幕截图以获取更多信息。

Fragments

1 个答案:

答案 0 :(得分:0)

在您的活动中创建方法(如:updateFragment)以更新片段B.从片段A的子片段调用该方法(updateFragment)然后该方法(updateFragment)更新片段B.

here is answer for update fragment from activity - 它可以帮助您更新父活动中的片段B

here is answer for call activity method from fragment - 它会帮助你从片段A的子片段中调用父活动方法