Увольнение Анко Диалог в onClickListener - PullRequest
0 голосов
/ 22 октября 2018

Я хотел бы закрыть Anko Dialog при нажатии кнопки, определенной в моем customLayout

val dialog = alert {
   val view = layoutInflater.inflate(R.layout.match_stats, null)
   val closeButton = view.findViewById<ImageButton>(R.id.closeButton)
   closeButton.setOnClickListener { _ -> dialog.dismiss()}
   customView = view
}
dialog.show()

Я пробовал приведенный выше код, к сожалению, я не могу получить ссылку на dialog в моем onClickListener,У вас есть идеи, как это решить?

1 Ответ

0 голосов
/ 22 октября 2018

Вы можете объявить переменную раньше и назначить null:

var dialog: DialogInterface? = null
dialog = alert {
   val view = layoutInflater.inflate(R.layout.match_stats, null)
   val closeButton = view.findViewById<ImageButton>(R.id.closeButton)
   closeButton.setOnClickListener { _ -> dialog?.dismiss()}
   customView = view
}.show()

Конечно, теперь ваша переменная dialog является изменяемой и необязательной.

...