Я пытаюсь создать диалог внутри обратного вызова onSuccess()
, который снова находится внутри метода onCreate()
действия, но диалоговое окно не отображается.
Когда я звоню createDialog()
прямо внутри onCreate()
, это работает. Что может быть причиной того, что она не работает в функции обратного вызова onSuccess()
? onSuccess()
и createDialog()
определенно звонят, потому что println
появляется.
Код:
class BleDevicesControlActivity : AppCompatActivity() {
private var device: BluetoothDevice? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_ble_devices_control)
connectToDevice(object : BleCommunication.OnConnectionListener {
override fun onSuccess() {
println("onSuccess called")
createDialog()
}
override fun onFailure() {
println("onFailure called")
}
})
}
private fun connectToDevice(onConnectionListener : BleCommunication.OnConnectionListener) {
bleCommunication.connect(device!!, onConnectionListener)
}
private fun createDialog() {
println("createDialog called")
val dialogInflater = LayoutInflater.from(this)
val alertDialogView = dialogInflater.inflate(R.layout.dialog_alert, null)
val alertDialog = AlertDialog.Builder(this).create()
alertDialog.setView(alertDialogView)
alertDialog.show()
}
}