0

質問間をスワイプすると、現在のページ番号が正しく読み込まれます

しかし、次のボタンを使用すると、最初のクリックでページ番号が読み込まれません(つまり、機能しませんonPageSelected())。2番目と他のクリックでコンテンツが読み込まれますが、1ページ前が読み込まれます。

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    this.setContentView(R.layout.activity_main);

    mPager = (ViewPager)findViewById(R.id.pager);
    QuestionPagerAdapter mAdapter = new QuestionPagerAdapter();

    mPager.setAdapter(mAdapter);

    OnPageChangeListener pageChangeListener = new OnPageChangeListener() {

        @Override
        public void onPageScrollStateChanged(int arg0) { }

        @Override
        public void onPageScrolled(int arg0, float arg1, int arg2) { }

        @Override
        public void onPageSelected(int position) {
            tv.setText( mPager.getCurrentItem()+"");
        }

    };

    mPager.setOnPageChangeListener(pageChangeListener);

    Question.next.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View view) {

        mPager.setCurrentItem(getItem(+1));
        }
    }

    private int getItem(int i) {
        int a = mPager.getCurrentItem();
        i += a;
        return i;
    }
});
4

1 に答える 1