我有这个问题,无法获得getCurrentItem()方法。
我最终从ViewPager获得了位置,而不是从PageAdapter 。 onPageSelected(int currentPage)方法获取当前显示的页面。
//custom PageAdapter implementation mAdapter = new AwesomePagerAdapter(); //Our custom view pager that extends from ViewPager mPager = (CustomViewPager) findViewById(R.id.preview_gallery); mPager.setAdapter(mAdapter); // get the item that we should be showing from the intent mCurrentPage = extra.getInt("currentIndex"); // show the item the user picked mPager.setCurrentItem(mCurrentPage); // listen for page changes so we can track the current index mPager.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. } });
在PageAdaper执行此操作对我不起作用,因为我想预加载不可见的图像。 传递给PageAdapter`的instantiateItem(View collection, int position)的位置是初始化的下一个项目的位置。 这与显示的项目无关。