现在 Handler() 已弃用,我该使用什么?

问题描述

仅不推荐使用无参数构造函数,现在最好Looper通过方法在构造函数中指定Looper.getMainLooper()

将其用于 Java

new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
    @Override
    public void run() {
        // Your Code
    }
}, 3000);

将它用于 Kotlin

Handler(Looper.getMainLooper()).postDelayed({
    // Your Code
}, 3000)

解决方法

如何修复此代码中的弃用警告?或者,还有其他选择吗?

Handler().postDelayed({
    context?.let {
        //code
    }
},3000)