如何处理Android

问题描述

以前,此代码可以完美运行。

现在显示android.os.handler已过时。

private final Handler mHandler = new Handler() {
    @Override
    public void handleMessage(Message msg) {
        switch (msg.what) {
            case MESSAGE_STATE_CHANGE:
        break;
        }
    }

我们如何解决此问题。

解决方法

正如Mike在评论中提到的,Handler不被弃用。不建议使用new Handler()创建Handler对象的方式。

根据文档,使用new Handler()可能会导致错误。因此,您应该为处理程序明确指定一个循环程序。 Looper不能为空。

请输入代码:

private final Handler mHandler = new Handler(Looper.getMainLooper()) {
    @Override
    public void handleMessage(Message msg) {
        switch (msg.what) {
            case MESSAGE_STATE_CHANGE:
        break;
        }
    }

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...