Android学习整理- 9- 实时更新UI-Handler

在Android中,是不允许在子线程中更新UI的,一般情况下我们使用Handler,AsyncTask,RxJava来在主线程中更新UI

Handler实时更新UI思路

  1. 用Handler的post方法启动runnable,然后在runnable方法中,使用postDelay()方法加上延迟时间再次post对象runnable,就可以实现实时更新

private Handler mHandler = new Handler();



.....

控制方法里
 mHandler.post(mRunnable);


//runnable如下

private Runnable mRunnable = new Runnable() {
        @Override
        public void run() {
            //俩条更新Ui逻辑
            mSeekBar.setProgress(mMyBinder.getPlayPosition());
            mTextView.setText(time.format(mMyBinder.getPlayPosition()) + "s");

            //再次发送
            mHandler.postDelayed(mRunnable, 1000);
        }
    };

2 线程写一个持续循环,每次进入循环内及post一次,然后休眠100ms(看情况决定,这样也行

Rxjava

很好用,先插眼,以后整理

AsyncTask

Android内置傻瓜机异步

Android学习整理 -11 -异步处理机制

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容