Activity内用handler更新TextView数据

来源:互联网 发布:淘宝开充话费店的知识 编辑:程序博客网 时间:2024/06/16 05:23

Handler的使用主要和下面几个方法相关:
sendMessage()
sendMessageDelayed()
post()
postDelayed()
在这里用的是sendMessage()方法,其它方法都比较相似。

贴上主要代码:

final Handler handler = new Handler(){         @Override         public void handleMessage(Message msg){             super.handleMessage(msg);             if(msg.what == 1){                 String date = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());//String类                 mText.setText(date);             }         }     };     mText.setText("更新前");     final Thread thread = new Thread(new Runnable(){         @Override         public void run() {              Message message = new Message();              message.what = 1;              handler.sendMessage(message);         }     });

创建一个新Thread线程,这段代码里我们使用handler在子线程向主程序里发送了一条message。这样handlemessage()方法就可以在主线程执行了Message也可以指定并传递数据,具体就是handler提交给子线程,然后通知更新UI。

     mButton.setOnClickListener(new OnClickListener() {         @Override         public void onClick(View v) {              thread.start();         }     });

再加一个按钮和监听器,实现更新TextView的操作。

0 0
原创粉丝点击