繁体   English   中英

Viewpager setCurrentItem()不会更新onPageSelected()

[英]Viewpager setCurrentItem() doesn't update onPageSelected()

当我在问题之间滑动时,它会正确加载当前页码

但是,当我使用下一个按钮时,第一次单击不会加载页面编号(我的意思是onPageSelected()不起作用。)第二次,其他单击将加载内容,但前一个加载页面。

@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;
    }
});

为什么不只是在您的听众中这样做:

mPager.setCurrentItem(mPager.getCurrentItem()+ 1);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM