指令汇B新闻客户端开发(四) 自动轮播条
来源:互联网 发布:千牛上怎么改淘宝店名 编辑:程序博客网 时间:2024/04/28 14:42
在这个新闻客户端,我们可以看到有一个轮播页面,在这个项目中,用Handler和一个定时器来做更容易一些,
我们定义一个Handler:
private Handler mHandler;
定时器的代码如下:
// 自动轮播条显示if (mHandler == null) {mHandler = new Handler() {public void handleMessage(android.os.Message msg) {int currentItem = mViewPager.getCurrentItem();if (currentItem < mTopNewsList.size() - 1) {currentItem++;} else {currentItem = 0;}mViewPager.setCurrentItem(currentItem);// 切换到下一个页面mHandler.sendEmptyMessageDelayed(0, 3000);// 继续延时3秒发消息,// 形成循环};};mHandler.sendEmptyMessageDelayed(0, 3000);// 延时3秒后发消息}
轮播条的触摸监听:
class TopNewsTouchListener implements OnTouchListener {@Overridepublic boolean onTouch(View v, MotionEvent event) {switch (event.getAction()) {case MotionEvent.ACTION_DOWN://System.out.println("按下");mHandler.removeCallbacksAndMessages(null);// 删除Handler中的所有消息// mHandler.postDelayed(new Runnable() {//// @Override// public void run() {//// }// }, 3000);break;case MotionEvent.ACTION_CANCEL:System.out.println("事件取消");mHandler.sendEmptyMessageDelayed(0, 3000);break;case MotionEvent.ACTION_UP:System.out.println("抬起");mHandler.sendEmptyMessageDelayed(0, 3000);break;default:break;}return true;}}
// 表示事件是否拦截, 返回false表示不拦截, 可以让嵌套在内部的viewpager相应左右划的事件
@Override
public boolean onInterceptTouchEvent(MotionEvent arg0) {
return false;
}
2 0
- 指令汇B新闻客户端开发(四) 自动轮播条
- 自动轮播条
- 指令汇B新闻客户端开发(三) 下拉刷新
- 广告条自动轮播
- Android复习之旅--ViewPager(自动轮播条)
- 指令汇B新闻客户端开发(一) 新手引导页开发
- ViewPager(四)——自动轮播图片
- 指令汇B新闻客户端开发(二) 主页面布局
- 指令汇B新闻客户端开发(五) ShareSdk的使用
- 指令汇B新闻客户端开发(六) 浅谈屏幕适配解决方案
- juery实战3:腾讯新闻、腾讯课堂自动轮播
- Android 仿网易新闻 ViewPager 实现图片自动轮播
- jQuery网站新闻公告上下滚动自动轮播代码
- iOS开发 UI 自动轮播图
- ViewPager自动轮播(获取网络资源)
- 自动轮播(不用导入依赖)
- 自动轮播图插件(参数)
- 图片自动轮播(仿淘宝??)
- EJB三种bean
- php 文件系统函数整理介绍
- 三星NOTE2 国行N7100线刷港行4.4.2一体包失败后救砖教程,深刻的记录。
- HDU 5565 Clarke and baton
- 关于即时通讯的一点记录
- 指令汇B新闻客户端开发(四) 自动轮播条
- MongoDB——MongoProvider
- Scrapy框架学习笔记二
- 性能优化之读写分离二
- php读取本地文件常用函数
- svn 历史记录不显示 (show log不显示)
- swift 变量、元组、运算符
- 资源之收集列表整理
- log4j输出日志到flume-ng(个人记录)