![](/img/trans.png)
[英]Update/Reload fragment with new data received from activity with TabLayout and FragmentPagerAdapter
[英]Update Activity title from fragment in FragmentPagerAdapter
我有v4.ViewPager
内Activity
,并使用SlidingTabLayout
从谷歌的例子SlidingTabBasics。 我遇到的问题是,从v4.FragmentPagerAdapter
getItem(position)
检索到的每个片段都必须刷新活动title 。 我已经了解了FragmentPagerAdapter
导致片段具有异常怪异的生命回调的困难方法,因此我可能无法使用onResume
或onStart
。 我注意到,当我想刷新活动标题时onCreateOptionsMenu(menu,inflater)
会调用onCreateOptionsMenu(menu,inflater)
。 当ViewPager
解决了片段并且应该更改活动标题时,是否存在提供操作的回调? 在ViewPager.onPageSelected(position)
上设置回调ViewPager.onPageSelected(position)
方便,因为我希望此信息从片段而不是片段传播。
目前,我“窃取” onCreateOptionsMenu(menu,inflater)
为我完成工作,但是当不应该夸大菜单但我仍然希望该片段能够影响活动标题时,这会导致优化问题。
您是否在片段中尝试过此代码:
if(getActivity() != null){
getActivity().setTitle("new title");
}
请注意,如果片段尚未附加到活动,则getActivity()将为null。
一帆风顺。
您可以通过不同的方式执行此操作。 您可以在可以按活动实现的片段中使用接口。 但是缺点是,如果确实有大量片段,则必须实现所有片段。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.