如何在视图寻呼机中获取项目编号?

时间:2013-09-10 13:14:07

标签: android android-viewpager android-pageradapter

如何在viewpager中获取当前项目no。

@Override
    public Object instantiateItem(ViewGroup paramView, int paramInt) {


        int itemno1= getItem(pager.getCurrentItem());
                   int itemno2= getItem(paramInt);

        Toast.makeText(context, "postition"+itemno1, Toast.LENGTH_SHORT).show();
        //Toast.makeText(context, "postition"+itemno2, Toast.LENGTH_SHORT).show();

               }

但是这种方法工作不正常。当我向前和向后滑动时,它会给出错误的项目。

2 个答案:

答案 0 :(得分:2)

在您的viewpager上设置ViewPager.setOnPageChangeListener

有点像这样 -

myViewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int i, float v, int i2) {

            }

            @Override
            public void onPageSelected(int i) {
              // here you will get the position of selected page
            }

            @Override
            public void onPageScrollStateChanged(int i) {

            }
        });

答案 1 :(得分:1)

试试这个

ViewPager.getCurrentItem();

pageListener = new PageListener();
ViewPager.setOnPageChangeListener(pageListener);

您必须为viewPager添加页面更改侦听器。 viewPager上没有方法来获取当前页面。

private int currentPage;

    private static class PageListener extends SimpleOnPageChangeListener{
            public void onPageSelected(int position) {
                Log.i(TAG, "page selected " + position);
                   currentPage = position;
        }
    }