改写控件之《runOnUiThread实现变换的TextView》,与Handle不同的体验

本文通过一个实例介绍如何使用runOnUiThread在Android中改变TextView的内容,对比了它与Handler的不同,强调runOnUiThread在处理UI交互时的便捷性。提供了一个简单的SwitchTextView和MainActivity的实现代码,鼓励读者通过运行Demo来加深理解。
摘要由CSDN通过智能技术生成

转载请注明出处王亟亟的大牛之路

业精于勤而荒于嬉,行成于思而毁于随。

今天 上一个用runOnUiThread实现的试图内容切换功能,用Handle也可以实现,但是今天 想用这个例子让大家了解下runOnUiThread。

我们来看下他的实现

public final void runOnUiThread(Runnable action) {
        if (Thread.currentThread() != mUiThread) {
            mHandler.post(action);
        } else {
            action.run();
        }
    }

需要传入一个Runnable 对象,如果当前线程是用户界面线程,然后立即执行动作。如果当前线程不是用户界面线程,则该动作被张贴到用户界面线程的事件队列中。

而我们的Handle方法则是在handleMessage方法内实现业务逻辑,如果不是需要交互的UI,比较推荐runOnUiThread,因为使用更方便 -。-

OK,贴下代码(今天应用报截屏Gif那个老卡,就不截了,就是一直在那里换字,大家可以跑Demo体验下)

SwitchTextView(继承TextView就可以使用他的标签)

public class SwitchTextView extends TextView {
   
    private boolean repeatFlag = false;
    private static 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值