Как я могу установить setCancelable(false) для диалога anko в Котлине?

Я могу установить setCancelable(false) для диалога в коде B, теперь я надеюсь установить то же свойство для диалога Anko в коде A.

Как я могу сделать ? Спасибо!

Код А

private fun deleteBackup(){
    alert(getString(R.string.DialogDeleteContent), getString(R.string.DialogDeleteTitle)) {
        yesButton {    
            //...             
        }
    }.show()
}

Код Б

private fun promptBuyWhenExpired() {
    if (IsExpired(applicationContext) ) {
        val builder = AlertDialog.Builder(this)
        builder.setMessage(getString(R.string.ExpiredTitle))
        builder.setTitle(getString(R.string.ExpiredWarning))
        builder.setCancelable(false)
        builder.setPositiveButton(getString(R.string.BtnYes)) { dialog, which ->
            finish()
        }
        builder.create().show()
    }
}

Ответ:

Я понимаю, это должно быть .show().setCancelable(false)


person HelloCW    schedule 07.05.2018    source источник


Ответы (1)


person    schedule
comment
Спасибо! но ваш код не работает, свойства isCancelable нет - person HelloCW; 07.05.2018
comment
@HelloCW Я использую общую библиотеку anko, и это свойство находится по адресу github.com/Kotlin/anko/blob/master/anko/library/static/commons/ Вы используете последнюю версию? - person Dewey Reed; 07.05.2018
comment
Спасибо! Я понимаю, это должно быть .show().setCancelable(false) - person HelloCW; 08.05.2018
comment
@HelloCW Это хорошо. Но мой код работает. В моей IDE нет ошибок. Последняя версия анко 0.10.5. Я думаю, вам может понадобиться обновить версию anko, чтобы использовать свойство isCancelable. - person Dewey Reed; 08.05.2018