Android开发中怎么实现图片轮播功能
发表于:2025-11-09 作者:千家信息网编辑
千家信息网最后更新 2025年11月09日,本篇内容主要讲解"Android开发中怎么实现图片轮播功能",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Android开发中怎么实现图片轮播功能"吧!第一
千家信息网最后更新 2025年11月09日Android开发中怎么实现图片轮播功能
本篇内容主要讲解"Android开发中怎么实现图片轮播功能",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Android开发中怎么实现图片轮播功能"吧!
第一步:创建MainActivity类
public class BaseActivity extends ActionBarActivity { private List mDatas; private ViewPager mViewPager; private boolean isRun = false; private AutoRunTask mTask; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mViewPager = new ViewPager(this); mViewPager.setLayoutParams(new AbsListView.LayoutParams(LayoutParams.MATCH_PARENT, Util .getDimen(R.dimen.home_pic_height))); mViewPager.setAdapter(new HomePagerAdapter()); // 设置滑动的初始位置 mViewPager.setCurrentItem(1000 * mDatas.size()); mViewPager.setOnTouchListener(this); mTask = new AutoRunTask(); mTask.start(); } @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: mTask.stop(); break; case MotionEvent.ACTION_UP: case MotionEvent.ACTION_CANCEL: mTask.start(); break; default: break; } return false; //viewpager必须是false,如果是true是就不能移动 }} 第二步:创建无限循环的PagerAdaper
class HomePagerAdapter extends PagerAdapter { // 使用此对imageView进行复用 private LinkedList convertViews = new LinkedList(); @Override public int getCount() { // return mPicUrls.size(); return Integer.MAX_VALUE; // 可以无线滑动 } @Override public boolean isViewFromObject(View arg0, Object arg1) { return arg0 == arg1; } @Override public void destroyItem(ViewGroup container, int position, Object object) { if (object != null && object instanceof ImageView) { ImageView imageView = (ImageView) object; // 添加到集合里 convertViews.add(imageView); container.removeView(imageView); } super.destroyItem(container, position, object); } @Override public Object instantiateItem(ViewGroup container, int position) { // position 因为无线大,所以 int index = position % mDatas.size(); ImageView imageView = null; if (convertViews != null && convertViews.size() > 0) { // 取出一个imageView imageView = convertViews.remove(0); } else { imageView = new ImageView(Util.getContext()); } String uri = HttpHelper.URL + "image?name=" + mDatas.get(index); mBitmapUtils.display(imageView, uri); container.addView(imageView); return imageView; }} 第三步:使用handler创建轮播类
public class AutoRunTask extends Handler implements Runnable { @Override public void run() { while (isRun) { removeCallbacks(this); int currentItem = mViewPager.getCurrentItem(); currentItem++; mViewPager.setCurrentItem(currentItem); postDelayed(this, 2000); } } public void start() { if (!isRun) { removeCallbacks(this); isRun = true; postDelayed(this, 2000); } } public void stop() { if (isRun) { isRun = false; removeCallbacks(this); } }}到此,相信大家对"Android开发中怎么实现图片轮播功能"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
功能
图片
开发
内容
无线
学习
实用
更深
位置
兴趣
实用性
实际
操作简单
方法
更多
朋友
网站
频道
复用
循环
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
将数据保存到数据库分为几个步骤
php中如何连接数据库
云数据库小程序怎么连接
哈曼汽车网络安全
深圳智能软件开发电话
excel删除包含数据库
网络数据库的分类
搭建http下载服务器
数据库使用空间
手机网络安全存在问题
软件开发首款应入什么科目
自己家电脑怎么安装服务器系统
阿里服务器怎么开设数据库
我的世界服务器拿回绑定物品指令
web服务器福建
国旗下讲话关于网络安全
江都财务软件开发
腾讯云服务器5年440
济南服务器哪家代理商专业
网络远程管理服务器软件
fao数据库怎么查找标准
软件开发8年面试自我介绍
呼叫转移显示连接不到服务器
没挂系统检测游戏数据库
苹果服务器在中国
h110安装服务器内存条
德州城管通软件开发系统
成本数据库表单
带网络安全模式如何开qq
网络安全与信息保密关系