相关文章推荐
彷徨的仙人掌  ·  Java ...·  1 周前    · 
粗眉毛的伏特加  ·  C/C++ ...·  8 月前    · 
非常酷的熊猫  ·  python - Error when ...·  1 年前    · 

====================问题描述====================
我想动态更新TextView内容,但是没有反应。有没有相关代码。
====================解决方案1====================
写个定时器。或者写个线程。隔段时间去更新就哦了
====================解决方案2====================
引用 2 楼 tyaathome 的回复:
Quote: 引用 1 楼 peijiangping1989 的回复:

写个定时器。或者写个线程。隔段时间去更新就哦了

有没有类似的代码例子给我看看。

新建个线程来更新textview里面的值,然后使用handler来更新界面!
====================解决方案3====================
class testThread extends Thread{
    public void run() {
              Message message = new Message();  
      mHandler.sendMessage(message); 
//在handler中更新UI
private Handler mHandler = new Handler(){  
        public void handleMessage(Message msg) {  
        textView.setText("你想变的内容");

然后在你的代码中,执行这个线程
====================解决方案4====================
 
private final Timer timer = new Timer(); 
private TimerTask task; 
Handler handler = new Handler() { 
    @Override 
    public void handleMessage(Message msg) { 
        // TODO Auto-generated method stub 
        textView.setText("XXXX");
        super.handleMessage(msg); 
task = new TimerTask() { 
    @Override 
    public void run() { 
        // TODO Auto-generated method stub 
        Message message = new Message(); 
        message.what = 1; 
        handler.sendMessage(message); 
timer.schedule(task, 1000, 1000); 


或者这样也行


====================解决方案5====================
mTestingButton.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
//开始进行Open-Short的Testing
testDialog = ProgressDialog.show(InitMassage.this, "", "Don't touch the Screen,Open-Short Testing...",true, false);
TimerTask task = new TimerTask(){
public void run(){
//execute the task
testDialog.cancel();
mShortTestNo.setText(" Pass");
System.out.println("1");
}
};
Timer timer = new Timer();
timer.schedule(task, 6000);
System.out.println("2");
}

});


我使用以上为什么不能在延迟6s后更改TextView的值为“Pass”,系统会自动崩溃!