`
渐渐远行的背景
  • 浏览: 5682 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ViewPage左右循环实现原理

阅读更多
ViewPage实现左右循环的方式有多种,网上有很多现成的代码,这里说下鄙人常用的一种,属于一种假无尽循环。

第一步,在ViewPage的PagerAdapter中, getCount()方法直接返回整数的极限值:Integer.MAX_VALUE;instantiateItem方法和destroyItem方式中,使用对position取余数后的值进行使用

第二步,如果需要在ViewPage的onPageSelected中,引用position的值,也进行类型取余数的方式,下面是PagerAdapter的样例代码

public class HomeAdViewPagerAdapter extends PagerAdapter {

	private ArrayList<View> viewList;

	public HomeAdViewPagerAdapter(ArrayList<View> viewList) {
		this.viewList = viewList;
	}

	
	@Override
	public int getCount() {
		return Integer.MAX_VALUE;
	}

	
	
	@Override
	public boolean isViewFromObject(View arg0, Object arg1) {
		return arg0==arg1;
	}

	
	
	
	@Override
	public Object instantiateItem(ViewGroup container, int position) {
		((ViewPager) container).addView(viewList.get(position%5));
		return viewList.get(position%5);
	}
	
	
	@Override
	public void destroyItem(ViewGroup container, int position, Object object) {		
		((ViewPager) container).removeView(viewList.get(position%5)); 
		
	}
	
}





分享到:
评论

相关推荐

    viewpager左右循环、定时滑动

    总的来说,实现"viewpager左右循环、定时滑动"需要对Android的UI组件有深入的理解,尤其是ViewPager的工作机制。同时,还需要掌握事件监听、线程同步、定时任务等相关知识。通过这样的实践,开发者不仅可以提升自己...

    Android巧用ViewPager实现左右循环滑动图片

    在这个例子中,我们将学习如何利用ViewPager实现一个可以左右循环滑动的图片轮播,同时在底部显示页码指示器。 首先,我们需要在布局文件中添加ViewPager和页码指示器的视图。如上所示的XML布局中,我们有一个包含...

    支持横向和纵向滑动的ViewPage

    在Android开发中,`ViewPager` 是一个非常常用的组件,它允许用户通过左右滑动来浏览多个页面,通常用于实现Tab切换或轮播图效果。然而,标准的`ViewPager`仅支持水平方向的滑动。在某些场景下,我们可能需要一个既...

    Android 使用ViewPager实现左右循环滑动及轮播效果

    然而,原生的ViewPager并不支持左右无限循环滑动,当滑动到边界时,用户会看到停止的动画,这可能对用户体验造成负面影响。针对这一需求,我们可以自定义Adapter来实现循环滑动和轮播功能。 首先,我们需要了解...

    ViewPage + Fragment 图片滑动和自动滚动

    `ViewPager`允许用户左右滑动查看多个`Fragment`或`View`,而`Fragment`则提供了一个在Activity中管理多个可替换的UI部分的方式。下面我们将深入探讨`ViewPager`与`Fragment`结合实现图片滑动和自动滚动的细节。 **...

    无限自动滑动ViewPage(完美, 直接复制使用,好理解)

    在Android开发中,`ViewPager` 是一个非常常用的组件,它允许用户通过左右滑动来浏览多个页面,通常用于实现Tab切换、轮播图等效果。本教程将详细讲解如何实现一个无限自动滑动的`ViewPager`,使得页面可以无缝循环...

    Android ViewPage

    2. **无限循环**:通过设置适配器和滑动监听器,可以实现ViewPager的无限循环效果,即当滑到最后一个页面时返回到第一个页面,反之亦然。 3. **预加载策略**:默认情况下,ViewPager会加载当前页面以及相邻的一页。...

    viewpager无限自动循环demo,

    【标题】:ViewPager无限自动循环实现教程 在Android开发中,`ViewPager`是一个非常常用的组件,它用于展示可滑动的页面,常用于实现类似轮播图的效果。本教程将详细讲解如何创建一个无限自动循环的`ViewPager` ...

    轮播图和轮播网页安卓版本

    在Android开发中,轮播图(Carousel)是一种常见的用户界面元素,用于展示多个图像或网页内容,通常在有限的空间内循环播放。本案例是基于`ViewPager`组件实现的安卓版本网页和图片轮播功能,适合开发者进行学习和...

Global site tag (gtag.js) - Google Analytics