简体   繁体   English

从查看页面获取当前项目的位置

[英]get the current item position from view pager

I tried the infinite view pager from this link . 我从此链接尝试了无限视图寻呼机。 I would like to know that how can I get the current item position according to this coding. 我想知道如何根据此编码获取当前商品的位置。 I retrieve position from viewPager's getCurrentItem method. 我从viewPager的getCurrentItem方法检索位置。 But the position is incorrect. 但是位置不正确。 I have tried the callback OnPageChangeListener method but it didn't work. 我已经尝试了OnPageChangeListener回调方法,但是没有用。

Thanks 谢谢

mPager.setOnPageChangeListener(new OnPageChangeListener() {

        @Override
        public void onPageSelected(int arg0) {

            switch (arg0) {
            case 1:

                fragment1 = (Fragment1) getSupportFragmentManager()
                .findFragmentByTag(
                        "android:switcher:" + R.id.pager + ":"
                                + (arg0 - 1));
                Bundle bundle =fragment1.SaveComplaintData();
                if(bundle.size()==0){
                    mPager.setCurrentItem(0);
                }
                else{
                data.setBundle(bundle);
                }
                break;

            case 2:

                fragment2 = (fragment2) getSupportFragmentManager()
                .findFragmentByTag(
                        "android:switcher:" + R.id.pager + ":"
                                + (arg0 - 1));


                break;

            default:
                break;
            }
            btnAction(arg0);
        }

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

        }

        @Override
        public void onPageScrollStateChanged(int arg0) {

        }

    });

This displays current page of viewpager while horizontally moving screen. 水平移动屏幕时,将显示viewpager的当前页面。

viewPager.setOnPageChangeListener(new OnPageChangeListener() {

            public void onPageSelected(int arg0) {
                // TODO Auto-generated method stub

            }

            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub
                int currentPage = viewPager.getCurrentItem() + 1;
                textView.setText(currentPage + " out of " + ...);
            }

            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub
                int currentPage = viewPager.getCurrentItem() + 1;
                textView.setText(currentPage + " out of " + ...);

            }
        });

instead of ... you can put the total number of pages from current item. 代替...您可以放入当前项目的总页数。

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

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