android - 如何使选项卡(ActionBar)停止调用其邻居选项卡的 onCreateView()

标签 android android-fragments tabs android-actionbar android-lifecycle

我需要我的第一个选项卡,当我选择它时(在选择第二个选项卡之后)调用它的 onCreateView() 或只是它的 onResume(),或另一个函数, 更新它。

我有 2 个选项卡,我在第二个选项卡中所做的必须更改第一个选项卡中的某些内容。但是,当我在第一个选项卡中并选择第二个选项卡时,将再次调用第一个选项卡的 onCreateView()。因此,如果我在第二个选项卡中执行某些操作并返回到第一个选项卡,则不会发生任何变化。要更新第一个,我必须再次转到第二个,它调用第一个的 onCreateView(),然后更新它。

我需要第一个选项卡在我选择它时自动更新,而不是在我选择第二个选项卡时。我已经尝试了 ViewPager.setOffscreenPageLimit(0),但没有成功。

我怎样才能让它发挥作用?

最佳答案

我在这里假设您使用的是 ViewPager。 setOffsetPageLimit(0) 不起作用的原因是因为 1 是这里的最小值。

您应该创建一个您的 Activity (或可以访问两个 fragment 的类)实现的回调,第二个 fragment 可以告诉它更新。然后您可以在该回调中执行逻辑以更新您的第一个 fragment 。

我建议不要像您提到的那样在 onCreateView() 中进行更新,因为那样它会将更新与 Fragment 生命周期相关联——这很难控制。

关于android - 如何使选项卡(ActionBar)停止调用其邻居选项卡的 onCreateView(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20829126/

相关文章:

Android - iphone 风格的 tabhost

javascript - Jquery UI 选项卡 : Next and Previous enable/disable based on select boxes

android - jar文件放在Assets/Plugins/Android的子文件夹下不会被打包?

android - DayDream 中的 VideoView 和 MediaController?

android - 从上到下 - 翻译动画

java - Android 在使用 Activity、Fragment、Listview 和 Tabs 时传递数据

android - 如何使用抽屉导航打开和关闭更改我的按钮图像

多次成功连接后,Android GATT 服务返回 Null

java - DialogFragment 在 Android 4.4.2 中顶部有蓝线

sql-server - SQL 拆分制表符分隔列