android - 如何访问 Helper 匿名类上的 View 对象
问题描述
我是 Android/Kotlin 开发的新手,所以我会尽力在这里描述我的问题。对于我的蓝牙应用程序,我正在尝试使用 Helper 对象从另一个线程访问 Android UI 线程。根据我在互联网上的研究,我尝试修改我发现的 Java 代码,最终在我的 Activity 类中使用了这个匿名类代码:
companion object{
var uuid : String = "00001101-0000-1000-8000-00805F9B34FB"
var handler : Handler = object : Handler(Looper.getMainLooper()){
override fun handleMessage(msg:Message){
statusMessage.text = "I called UI"
}
}
}
上面代码的问题是我无法访问该handleMessage()
函数的任何 UI 视图。最终,我的连接线程无法将信息发送到 UI 线程。任何人都不能给我一些光或方向来解决这个问题吗?Android 有任何其他 Kotlin 友好的方式来与 UI 线程通信吗?
解决方案
你可以尝试这样的事情:
val handler = Handler(Looper.getMainLooper())
handler.post {
// this part of code runs on your main thread
}
推荐阅读
- python - 是否可以为弹性搜索搜索返回字段的所有分组值?
- opc-ua - Open62541 包含对象数组的对象:OptionalPlaceholder 和 HasOrderedComponent 参考
- java - Maven:Fat jar 作为本地依赖项
- java - 数据库作为微服务
- heroku - 有没有办法防止从heroku骑自行车?
- javascript - 未捕获的类型错误:无法定义属性“x”:对象不可扩展
- java - Java Spark - 数据集/数据框中两列值的差异
- ios - 在本机应用程序中构建失败
- amazon-web-services - AWS CloudFormation - 忽略属性的变化 - Terraform等效的`ignore_changes`?
- async-await - Blazor webassembly 中的 Http 客户端成功发布,就像在 jQuery 中一样