Android 线程监控以及线程刷新主UI的方法

来源:互联网 发布:windows激活工具怎么用 编辑:程序博客网 时间:2024/05/16 11:51


1、在Activity主UI中开新线程:
new Thread(new Runnable()        {            @Override            public void run()            {                  while(true)                {                      //获取需要监控的值                         //若值有变化,则执行相应处理程序(如刷新主UI线程)    }        try{                         Thread.sleep(2000); //线程运行的频率,单位是毫秒(0.001秒)                    }catch (InterruptedException e){                          e.printStackTrace();                     }                 }            }        }).start();


2、监控到值的变化之后,如果直接在线程中更改主UI线程,会出错。

提示是:“Android中不能在子线程中刷新UI线程”

解决方法:用 Activity.runOnUiThread,它是Handle的特殊情况,便于处理这类问题

代码如下:

Activity.this.runOnUiThread(new Runnable()    {    @Override    public void run()    {         // 更新UI的操作代码              }    });


注:

1、其中Activity是指主UI所在的Activity的名称,也就是指明要操作哪一个UI。

2、将这段代码直接加到Thread的处理程序中就行了。


参考资料:http://blog.163.com/menxu_work/blog/static/20777441920125311250187/


Over



0 0