【发布时间】:2020-12-30 20:51:04
【问题描述】:
当建立 websocket 连接时,我想使用 Alerter(UI) 库显示连接成功的警报消息。但是每次我想显示消息时它都会崩溃。 它给了我错误:“活动不能为空”可能是因为我从另一个类调用了该函数。
这是代码。
class MainInstall : Fragment() {
...
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
btnConnect.setOnClickListener {
val checkUri = hostnameInput.text.toString()
checkConnection(checkUri)
}
}
private fun checkConnection(url:String){
val request = Request.Builder()
.url("wss://$url/temp/true")
.build()
val wsClien = client.newWebSocket(request, EchoWebSocketListener())
}
fun alertBericht(){
Alerter.create(activity)
.setTitle("Alert Title")
.setText("Alert text succesfull")
.show()
}
}
class EchoWebSocketListener : WebSocketListener() {
override fun onOpen(webSocket: WebSocket, response: Response) {
output("Connected")
MainInstall().alertBericht()
}
...
}
当 Class 不是 Main 时如何更新我的 UI?
提前谢谢你。
【问题讨论】:
标签: android android-layout kotlin android-fragments websocket