从片段页r适配器中的片段更新活动标题



我在Activity里面v4.ViewPager,并使用谷歌的例子SlidingTabBasics中的SlidingTabLayout。我遇到的问题是,从v4.FragmentPagerAdapter getItem(position)检索的每个片段都必须刷新活动标题。我已经学会了FragmentPagerAdapter导致片段具有非常奇怪的生活回调的艰难方式,所以我可能无法使用onResumeonStart。我注意到,虽然onCreateOptionsMenu(menu,inflater)在我想刷新活动标题时被调用。ViewPager解决了片段并且它应该更改活动标题时,是否有回调来提供操作?ViewPager.onPageSelected(position)上设置回调是不方便的,因为我希望此信息从片段传播,而不是传播到片段。

目前我"窃取"onCreateOptionsMenu(menu,inflater)为我完成工作,但是当不应该夸大菜单时,它会导致优化问题,但我仍然希望片段能够影响活动标题。

您是否在片段中尝试过以下代码:

if(getActivity() != null){
   getActivity().setTitle("new title");
}

考虑到如果片段尚未附加到活动,getActivity() 将为 null。

一路平安。

您可以通过不同的方式执行此操作。您可以在片段中使用可由活动实现的接口。但缺点是,如果你有大量的片段,你必须实现所有这些片段。