package mars.com;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ImageView;
//使用handler异步更新UI界面
public class Demo_Handler extends Activity {
private ImageView image;
private int what = 0;
private Handler handler = new Handler() {
public void handleMessage(Message message) {
switch (message.what) {
case 0:
image.setImageResource(R.drawable.run0);
break;
case 1:
image.setImageResource(R.drawable.run1);
break;
case 2:
image.setImageResource(R.drawable.run2);
break;
case 3:
image.setImageResource(R.drawable.run3);
break;
case 4:
image.setImageResource(R.drawable.run4);
break;
case 5:
image.setImageResource(R.drawable.run5);
break;
default:
break;
}
super.handleMessage(message);
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
image = (ImageView) findViewById(R.id.image);
thread.start();
}
Thread thread = new Thread(new Runnable() {
public void run() {
while (true) {
Message message = handler.obtainMessage();
message.what = (what++) % 6;
handler.sendMessage(message);
try {
Thread.sleep(2000);
} catch (Exception e) {
}
}
}
});
}
main.xml文件我就不贴了,就一个ImageView大家估计都懂
分享到:
相关推荐
ndroid异步处理一:使用Thread+Handler实现非UI线程更新UI界面
Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面。
Demo-实例讲解线程池里面的UI如何刷新,处理两个开发者头疼的问题: 1. 数据经常需要读取更新,并且比较耗时,需要分步刷新UI....2. UI界面切换后,如何停止掉子线程里面正在读取的数据而不会将旧数据刷新到新UI界面上.
一、问题:在Android启动后会在新进程里创建一个主线程,也叫UI线程(非线程安全)这个线程主要负责监听屏幕点击事件与界面绘制。当Application需要进行耗时操作如网络请求等,如直接在主线程进行容易发生ANR错误。...
Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细,但也是有缺点的,例如代码相对臃肿,在多个任务同时执行时,不易...
Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细,但也是有缺点的,例如代码相对臃肿,在多个任务同时执行时,不易...
// (3)将下载成功的数据显示在界面UI中 // 2. 代码分析: // (1). 在onCreate里面,定义并开启一个线程. // (2). 线程方法里面执行下载数据. // (3). 定义一个异步消息,用来设置图片,原理是非主线程中不能对主线...
目录一:问题的提出二:使用Handler处理多线程问题三:使用AsyncTask...但是在Android中,只,只有主线程才可以更新主UI界面,而其子线程不能更新UI视图。那我们应该怎么办呢? 二:使用Handler处理多线程问题 Handler:
Handler 实例向 UI 线程发送消息,完成界面更新, 优点:对整个过程控制的比较精细; 缺点:代码相对臃肿,多个任务同时执行时,不易对线程进行精确的控制; AsyncTask :比Handler 更轻量级一些,适用于...
这个类允许执行后台操作并在UI界面上发布结果,而不必处理多线程。AsyncTask是围绕Thread和Handler设计的一个辅助类,它不构成一个通用的线程框架。Asynctasks应该用于短作业(最多几秒钟)。 说的简单一点,其实...
主要介绍了总结Android中多线程更新应用的页面信息的方式,文中共总结了runOnUiThread、Handler、AsyncTask异步以及View直接在UI线程中更新的方法,需要的朋友可以参考下
LoaderManager异步加载、多线程(AsyncTask与Handler)、 百度地图等十五个模块,一共102集。 本网盘分享章节编号是按照视频更新的先后顺序编号的,具体学习可参考如下章节顺序: 【第一版第一章】老罗Android...
在ASP.NET页面中推荐使用覆写(Override)而不是事件处理(Event Handler) 常用编码工具类,支持base64,md5,des,crc32 也谈谈技术面试 在C#里把ArrayList转换为Array 或 把Array转换为ArrayList C# 2.0 在.NET 2.0中...
jQuery UI中包含大量预定义好的部件(widget),以及一组用于构建高级元素(例如可拖放的界面元素)的工具。 jQuery 1.2.6(2008年5月):这一版主要是将Brandon Aaron开发的流行的Dimensions插件的功能移植到了核心...
Messagehandler实例 177 8、数据存储与读取 179 1. PREFERENCES 179 2. FILES 180 3. DATABASES 180 4. NETWORK 183 5、CONTENTPROVIDER 183 6、执行SQL语句进行查询 188 用法1 188 其它: 188 详解: 189 查看...
Messagehandler实例 177 8、数据存储与读取 179 1. PREFERENCES 179 2. FILES 180 3. DATABASES 180 4. NETWORK 183 5、CONTENTPROVIDER 183 6、执行SQL语句进行查询 188 用法1 188 其它: 188 详解: 189 查看...
3.2. 宫格界面 ......................................... 52 3.2.1. 示例分析: ............................ 52 3.2.2. 效果展示 ................................ 58 3.3. Tab 界面 ............................