Android异步更新UI的方式之使用Handler的post(Runnabel r)方法
由于性能要求,android要求只能在UI线程中更新UI,要想在其他线程中更新UI,给大家介绍一种方式:使用Handler的post(Runnabel r)方法
下面用这种方式更新一个TextView:
1.packagecom.example.runonuithreadtest;
2.importandroid.app.Activity;
3.importandroid.os.Bundle;
4.importandroid.os.Handler;
5.importandroid.widget.TextView;
6.publicclass MainActivity extends Activity {
7.privateTextView tv;
8.@Override
9.protectedvoid onCreate(Bundle savedInstanceState) {
10.super.onCreate(savedInstanceState);
11.setContentView(R.layout.activity_main);
12.tv = (TextView) findViewById(R.id.tv);
13.Handler handler = new Handler();
14.handler.post(new Runnable(){
15.@Override
16.public void run() {
17.try {
18.//延迟两秒更新
19.Thread.sleep(2000);
20.} catch (InterruptedException e) {
21.e.printStackTrace();
22.}
23.tv.setText("更新后的TextView");
24.}
25.});
26.}
27.}
当然对APP的性能测试,我比较常用的是这个平台:www.ineice.com
更多相关文章
- Android(安卓)TextView实现下划线的几种方式
- this version of ADT requires android SDK tools revision 21.0
- 学习笔记:Android开源库使用方法总结
- Java(Android)数据结构汇总(二)-- Set(下)
- android 更新UI的两种方法
- android的两种启动service方式及混合方式
- android 在surfaceView上画图
- RxJava RxAndroid(安卓)在android中最重要的应用(一)
- Android(安卓)TabWidget底部显示效果