Android 如何创建指向视图寻呼机的循环,而不回溯以前的元素
我需要从字符串资源数组中设计一个ViewPager,并显示循环页面指示器。现在我想在用户从最后一个项目向左滑动时设置第一个项目,并在从第一个项目向右滑动时设置最后一个项目。在经历了许多解决方案后,它会在从最后一项向左滑动的同时回溯整个路径。没有回溯的任何方法。我想平稳地设置为第一项,而不必再次遍历整个路径 下面是我使用的代码Android 如何创建指向视图寻呼机的循环,而不回溯以前的元素,android,android-viewpager,infinite-scroll,viewpagerindicator,circular-list,Android,Android Viewpager,Infinite Scroll,Viewpagerindicator,Circular List,我需要从字符串资源数组中设计一个ViewPager,并显示循环页面指示器。现在我想在用户从最后一个项目向左滑动时设置第一个项目,并在从第一个项目向右滑动时设置最后一个项目。在经历了许多解决方案后,它会在从最后一项向左滑动的同时回溯整个路径。没有回溯的任何方法。我想平稳地设置为第一项,而不必再次遍历整个路径 下面是我使用的代码 viewPager = (ViewPager) view.findViewById(R.id.view_pager); mAdapter = new Pro
viewPager = (ViewPager) view.findViewById(R.id.view_pager);
mAdapter = new PromoPagerAdapter(getActivity());
viewPager.setAdapter(mAdapter);
viewPager.addOnPageChangeListener(this);
CirclePageIndicator circlePageIndicator = (CirclePageIndicator) view.findViewById(R.id.page_indicator);
circlePageIndicator.setViewPager(viewPager);
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
mCurrentPosition = position;
}
@Override
public void onPageScrollStateChanged(int state) {
int currentPage = viewPager.getCurrentItem();
if (currentPage == mAdapter.getCount()-1 || currentPage == 0) {
previousState = mCurrentPosition;
mCurrentPosition = state;
if (previousState == 1 && mCurrentPosition == 0) {
viewPager.setCurrentItem(currentPage == 0 ? mAdapter.getCount()-1 : 0);
}
}
}
此库执行您想要的操作:
由于Stackoverflow是一个编程网站,我们在代码中工作。请张贴相关的代码,你已经尝试了迄今为止,因为我们无法为你做到这一点。请参考如何创建一个最小、完整且可验证的示例。