如何使用 viewpager 在不同的片段中使用 activity 组件

How to use an activity component in different fragments with viewpager

我有一个 activity 有 5 个片段。我在不同片段内的同一组件的 onClick 上使用不同的功能。由于 viewpager 的片段预加载,下一个片段的功能被执行而不是当前片段。我该怎么办?

没有办法避免它,因为视图分页器的最小偏移量是 1。
所以我建议您使用另一种方式来存档您的结果:

想法 1:如果您使用 FragmentStatePagerAdapter 第二个参数作为 FragmentStatePagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT,这意味着您的视图寻呼机中只有一个片段将在 onResume 状态。因此,您可以在 onResume 方法中开始所有 networking/side 效果工作。

想法2:当你不需要滑动left/right效果时,为什么要使用view pager?可能你走错了路。例如,您可以只使用框架布局,然后在用户按照您的预期进行交互时使用您的片段管理器附加和分离片段。我建议你在 FragmentTransaction 上看得更好。 Here is a link.

请随时向我询问其中一种方法。