android记录(启动线程,脏活放后面)
来源:互联网 发布:计算机大数据方向 编辑:程序博客网 时间:2024/06/06 03:29
package com.duoduo.nasadailyimage;import android.app.Activity;import android.app.ProgressDialog;import android.os.Bundle;import android.os.Handler;import android.view.View;import android.widget.Button;import android.widget.TextView;public class NasaDailyImageActivity extends Activity {private ProgressDialog dialog;private Handler handler;public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);handler = new Handler();}public void onRefresh(View view) {dialog = ProgressDialog.show(this, "Loading", "Loading");Thread thread = new Thread() {public void run() {handler.post(new Runnable() {public void run() {TextView imageDescriptionView = (TextView) findViewById(R.id.imageDescription);imageDescriptionView.setText(getString(R.string.image_description2));dialog.dismiss();}});}};thread.start();}}
android里面,UI有一条独立的线程,如有稍微有点费时(脏活)的事儿在UI线程中出现,程序就会卡住,所以对于脏活要启动一条新的线程。
例子里面是点击一个Button后,TextView的文本会换成别的玩意儿,在此期间显示一个等待条。
从R中获得字符串用getString方法,如果不用handler的画会报一个异常android.view.ViewRoot$CalledFromWrongThreadException(
http://blog.csdn.net/moonlit1228/article/details/6399878),因为在新线程中需要有UI的操作(setText),而新线程和UI线程的交换貌似有什么说法,UI操作,必须在UI中,因此使用Handler解决这个问题。
- android记录(启动线程,脏活放后面)
- const放在函数后面
- const放在函数后面
- Android学习记录:线程
- Android 启动优化记录
- android如何启动线程
- Android 启动线程
- 放在函数后面的const是什么意思?
- Go的类型为什么放后面
- Android 线程的一点记录
- :hover放前面和放后面的区别
- Android中网络请求放在子线程中问题
- android中启动线程方式
- Android启动线程的方法
- 线程 放鸡蛋咯
- 工作记录--android 分线程, 录音
- 启动图后面加入别的启动图片
- android 应用第一次启动记录状态
- Xcode 4.1~4.6 + iOS 5、iOS 6免证书(iDP)开发+真机调试+生成IPA全攻略
- opencv中如何判断一个点是否在一个多边形中
- DXP Designer9.0 同网络等长布线方法
- 今天结束了自己的编程生涯
- hdu 1199 Color the Ball(离散化线段树)
- android记录(启动线程,脏活放后面)
- Android 在已有布局中动态添加控件
- SQL SERVER 存储过程基本语法
- C# string 转 int 或 float 类型转换
- Linux TC流量控制HOWTO中文版
- U盘安装CentOS 6.4及修改默认启动顺序
- STM32的优先级NVIC_PriorityGroupConfig的理解及其使用
- android时间控件TimePicker使用实例
- poj 2255 Tree Recovery