3

我创建了一个带有圆形页面指示器的视图寻呼机。它工作正常。这是我的新要求:当我在最后一页/第一页并尝试滑动到下一页/上一页时,我的屏幕应该向滑动方向移动至少 30% 并回到原来的位置,因为没有更多页面导航?当然,我在顶部有页面指示器,它告诉我在可用页面中的位置。我希望我的要求很明确。我怎样才能实现它?请帮我。提前致谢。

4

2 回答 2

6
ViewPager.OnPageChangeListener pagerListener = new ViewPager.OnPageChangeListener() {
        boolean lastPageChange = false;

        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels){
            int lastIdx = mPgScreenAdapter.getCount() - 1;

            Log.d(TAG, "pos:" + position);
            if(lastPageChange && position == lastIdx)
                PPIntent.changeScene(curAct, new Intent(curAct, LoginActivity.class), true);
        }
        @Override
        public void onPageSelected( int i) {
            pgText.setCurrentItem(i/2);
        }
        @Override
        public void onPageScrollStateChanged(int state) {
            int lastIdx = mPgScreenAdapter.getCount() - 1;

            int curItem = pgScreen.getCurrentItem();
            if(curItem==lastIdx /*&& lastPos==lastIdx*/  && state==1)   lastPageChange = true;
            else                                                         lastPageChange = false;
        }
    };
于 2015-03-19T04:30:40.480 回答
2

这是自动的。操作系统内置了指示器来告诉用户视图不能再滑动了。操作系统将在屏幕一侧显示发光,用户无法进一步拉动。

不确定您是否可以创建自己独特的 UI 来处理这个问题 - 操作系统确实提供了一个开箱即用的指示器。

于 2012-10-22T13:03:08.663 回答