#author("2021-07-29T16:48:20+08:00","default:Admin","Admin")
#author("2024-07-30T09:25:39+08:00","default:Admin","Admin")
[[Android]]

&color(red){※前提条件:本情報はAndroid Studio 4.2.2を基づいて説明してる};

#contents

* Can't create handler inside thread Thread[Thread-2,5,main] that has not called Looper.prepare() [#u2eef8b8]

** 报错原因可能是以下几种情况: [#b94b1391]

不是在主线程中开启了新的线程
异步操作中执行UI显示(在异步操作中调用UI函数,如Toast)


** 解决办法:在你的报错的行数的逻辑前后加上 [#xd0376f0]

#codeprettify{{
Looper.prepare();
...
ToastUtils.show("这是一条Toast");
...
Looper.loop();
}}


* java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() [#kfd97954]

#codeprettify{{
loginActivity.this.runOnUiThread(new Runnable() {
    @Override
    public void run() {
        Toast.makeText(loginActivity.this, "服务访问失败"+ ex.getMessage(), Toast.LENGTH_SHORT).show();
    }
});
}
}}

#hr();
コメント:
#comment_kcaptcha

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS