我正在创建一个具有CustomViewPager和Adapter的android项目。有代码:
public class TabsPagerAdapter extends FragmentPagerAdapter {
private String tabTitles[] = new String[] { "TAB1", "TAB2", "TAB3", "TAB4", "TAB5"};
public TabsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int index) {
switch (index) {
case 0:
// Top Rated fragment activity
return new FRAGMENT0();
case 1:
// Games fragment activity
return new FRAGMENT1();
case 2:
// Movies fragment activity
return new FRAGMENT2();
case 3:
// Movies fragment activity
return new FRAGMENT3();
case 4:
// Movies fragment activity
return new FRAGMENT4();
}
return null;
}
@Override
public int getCount() {
return 5;
}
@Override
public CharSequence getPageTitle(int position) {
return tabTitles[position];
}
}
viewPager:
public class NonSwipeableViewPager extends ViewPager {
public NonSwipeableViewPager(Context context) {
super(context);
}
public NonSwipeableViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
// Never allow swiping to switch between pages
return false;
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// Never allow swiping to switch between pages
return false;
}
}
我在视图中有5个标签页面。我的目标是当用户处于FRAGMENT 0并触摸另一个选项卡,然后再打开新显示警告对话框,然后导航到选定选项卡。 FRAGMENT1也是如此。多数民众赞成,但我无法找到解决方案。我试图在活动中制作OnPageListener,在片段中制作OnPageListener,但它不起作用。要使用该逻辑,我需要拥有当前页面和选定的选项卡,但是如果我将侦听器放在活动pager.getCurrentItem中,则无法正常工作。有人可以帮我提一些建议吗?