0

我有一个包含三个片段的 ViewPager 的活动

    public class Hello extends extends FragmentActivity
...
adapterViewPager.addFragment(new FRG_one());
adapterViewPager.addFragment(new FRG_two());
adapterViewPager.addFragment(new FRG_three());
adapterViewPager.addFragment(new FRG_four());
...

在活动中,我有一个按钮,当按下该按钮时,我想做一个或另一个动作,具体取决于屏幕上显示的片段

我找到了检测片段是否可见的方法,但不要为我服务。

我需要的是包含viewpager(扩展FragmentActivity)的活动检测到片段有焦点

我很感激帮助

问候 :)

4

3 回答 3

4

你可以打电话ViewPager.setOnPageChangeListener(...)来监听页面变化。您的侦听器可以将当前页面位置存储在其onPageSelected(int position)回调中,然后根据它改变您的按钮操作。

于 2013-04-26T14:57:14.477 回答
2

为什么不使用onPageChangeListener?这将在视图寻呼机显示新页面或片段时触发回调。您可以使用提供的索引来确定当前焦点所在的片段。

于 2013-04-26T14:58:01.220 回答
0

创建一个遍历所有片段的循环,并检查.isVisible()方法是否返回 true,如果返回 true,则break;继续,否则继续。

于 2013-04-26T14:58:17.050 回答