码迷,mamicode.com
首页 > 移动开发 > 详细

android开发中 如何动态更新TextView的内容?

时间:2014-10-08 18:11:25      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:android   使用   java   sp   c   问题   on   log   代码   


====================问题描述====================
我想动态更新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”,系统会自动崩溃!

android开发中 如何动态更新TextView的内容?

标签:android   使用   java   sp   c   问题   on   log   代码   

原文地址:http://www.cnblogs.com/meizhenfen42/p/4011138.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!