android:ViewPager的无限多页数的设置
2017-05-24 09:50
281 查看
比如日历中,就会需要无限多页数的左右滑动。如何实现?难道要准备一个无限长的
改进如下:
可以准备一个无限长的
详见如下示例代码:
List<ItemView>?那样会太占内存了。而且,也不可行。
改进如下:
可以准备一个无限长的
List<ItemBean>里面存放的是每页需要显示的数据。而
ItemView不要去管,在预加载中去创建,在回收中去移除即可。
详见如下示例代码:
private void setViewPager() { ViewPager vp = (ViewPager) findViewById(R.id.bc_vp); NoPager adapter = new NoPager(); vp.setAdapter(adapter); int count = adapter.getCount(); int index; if (count % 2 == 0) { index = count / 2; } else { index = count / 2 + 1; } Logger.d("count = " + count + " , index = " + index); vp.setCurrentItem(index); } private class NoPager extends PagerAdapter { @Override public int getCount() { // Integer.MAX_VALUE == 2147483647 return Integer.MAX_VALUE; // 1. 无限长搞定了 } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } @Override public Object instantiateItem(ViewGroup container, int position) { View child = LayoutInflater.from(get()).inflate(R.layout.content_item, container, false); // 2. 预加载中去创建`ItemView` TextView tv = (TextView) child.findViewById(R.id.tv_content_item); tv.setText("page " + position); if (child.getParent() != container) { container.addView(child); } return child; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); // 3. 回收方法去移除`ItemView` } }
相关文章推荐
- android ViewPager实现无限轮播和设置监听事件
- Android ViewPager 实现无限循环滑动
- android viewpager 实现左右无限循环
- android 设置viewpager滑动速度
- Android同一Activity中不同Fragment设置不同的menu(ViewPager+Fragment)
- Android ViewPager实现无限循环滑动
- Android中ViewPager无限循环实现方法
- Android ViewPager无限滑动(支持左右,无传入数量限制)方式一
- Android--ViewPager的无限轮播
- Android ViewPager实现广告无限轮播
- Android viewpager中动态添加view并实现伪无限循环的方法
- ViewPager设置缓存页数
- Android ViewPager简单几行代码设置滑动动画
- android 实现无限循环viewpager
- Android ViewPager做引导页不定页数 代码实例
- Android 简单最实用的方式实现ViewPager无限循环两种方式
- android viewPager滑动速度设置
- 解决Android开发中ViewPager动态设置PagerAdapter时第二次进入Fragment内容不显示的问题
- Android 自定义ViewPager设置屏蔽左右滑动事件
- android 自定义无限循环播放的viewPager。轮播ViewPager。实现循环播放 广告,主题内容,活动,新闻内容时。