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

これは自動です。OSには、ビューをこれ以上スワイプできないことをユーザーに通知するインジケーターが組み込まれています。OSは画面の横に光を表示し、ユーザーはそれ以上引っ張ることができません。

これを処理するための独自のUIを作成できるかどうかはわかりません。OSはすぐに使用できるインジケーターを提供します。

于 2012-10-22T13:03:08.663 に答える