Android PagerAdapter, get current position Android PagerAdapter, get current position android android

Android PagerAdapter, get current position


You would use:

int position = mViewPager.getCurrentItem()


I had this problem and could not get the getCurrentItem() methode.

I ended up getting the position from the ViewPager and not from the PageAdapter. The onPageSelected(int currentPage) methode is getting the currently displayed page.

//custom PageAdapter implementationmAdapter = new AwesomePagerAdapter();//Our custom view pager that extends from ViewPagermPager = (CustomViewPager) findViewById(R.id.preview_gallery);mPager.setAdapter(mAdapter);// get the item that we should be showing from the intentmCurrentPage = extra.getInt("currentIndex");// show the item the user pickedmPager.setCurrentItem(mCurrentPage);// listen for page changes so we can track the current indexmPager.setOnPageChangeListener(new OnPageChangeListener() {    public void onPageScrollStateChanged(int arg0) {    }    public void onPageScrolled(int arg0, float arg1, int arg2) {    }    public void onPageSelected(int currentPage) {        //currentPage is the position that is currently displayed.     }});

Doing it in the PageAdaper didn't work for me as I want to preload images that are not visible. The position that is passed instantiateItem(View collection, int position) of the PageAdapter` is the position of the next item initialized. This has nothing to do with the item that is displayed.


https://github.com/Shereef/ViewPagerPlusExpandableList/blob/master/src/net/shereef/vewpagerplusexpandablelistexample/ViewPagerPlusExpandableListActivity.java#L204

if i write after that line

    Log.i("pager",myPager.getCurrentItem()+"");

it will show in the logcat the current item page while the oncreate is being run which is always 0

noteice i have used the object for the viewpager it self not the adapter.