-1

发出回调时不会触发 LiveData 观察者。但是,如果我将可观察数据放在一个函数中并更改数据,它就可以正常工作。请问有什么想法吗?

fun connect(address: String){

    protocolARC.value = ProtocolARC() //OKAY!!!!

    bleManager.gattClient.onCreate(getApplication(), address, object : GattClient.OnCounterReadListener {
        override fun onCounterRead(value: Int) {

            Log.d("HURRAY", "read")

            protocolARC.value = ProtocolARC() //NOT OKAY?????
        }

        override fun onConnected(success: Boolean) {
            stopScan()
        }
    })
}
4

1 回答 1

0

问题出在回调中。它不是从主线程触发的。

于 2017-10-02T15:24:18.513 回答