【发布时间】:2020-06-29 12:16:44
【问题描述】:
我有一个视图,我们称之为 promptView,一旦发出 HTTP GET 请求,我就需要打开它。我的所有 API 代码都在另一个类中,为了发出 GET 请求,您必须在另一个线程/异步任务/协程中运行它。对于这种情况,我决定使用协程,因为它很简单并且可以完成工作。一旦发出请求并收到 响应,它应该打开我的主要活动中的 promptView。我得到错误:
Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference
我打开 promptView 的代码是:
Handler(Looper.getMainLooper()).post {
mClass.promptView.isVisible = true
}
我很肯定mClass.promptView.isVisible = true 是问题所在,因为当我删除它并将例如 Log.d() 放在那里时,它运行良好。我想知道我做错了什么,或者我可以做些什么来改变另一个类中另一个线程的视图可见性。提前致谢!
【问题讨论】:
标签: android kotlin kotlin-coroutines