Android 学习使用空闲线程addIdleHandler

Android 中的 Handler 用于处理 UI 更新和一些耗时操作。
偶然看到了 addIdleHandler ,记录下探索过程。

Looper.myQueue().addIdleHandler(new MessageQueue.IdleHandler() {
            @Override
            public boolean queueIdle() {
                if (mContentLayout != null && !mContentLayout.isInTouchMode()) {
                    mFirstBtn.setFocusable(true);
                    mFirstBtn.requestFocus();
                }
                return false;
            }
        });

网上搜索了一些答案:

return false 表示仅回调执行一次;
return true 表示一直回调执行;

addIdleHandler只会在线程空闲的时候执行,就算有延时消息也会延时消息执行完在执行,意思就是闲的蛋疼的时候执行才干活!!!!

可以将 addIdleHandler 用于处理启动优化,初始化的时候,非必须的操作项可以放到这里面执行。 

参考:

Android 学习使用空闲线程addIdleHandler_南国樗里疾的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值