Как исправить «requestFeature () должен вызываться перед добавлением контента» при расширении AlertDialog - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь создать свой собственный AlertDialog и получить исключение "requestFeature () должен быть вызван перед добавлением контента"

Есть ли кто-нибудь, кто может мне помочь ???

CustomAlertDialog:

class CustomConfirmDialog(
    internal var context: Context,
    // val title: String,
    val msg: String,
    val listener: OnConfirmListener
) : AlertDialog(context) {
    interface OnConfirmListener {
        fun onConfirmClick()
        fun onCancelClick()
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        requestWindowFeature(Window.FEATURE_NO_TITLE)
        super.onCreate(savedInstanceState)
        setContentView(R.layout.confirm_dialog)

        // tvDialogTitle.text = title
        tvDialogMsg.text = msg

        btnCancel.setOnClickListener {
            listener.onCancelClick()
            if (isShowing)
                dismiss()
        }

        btnOK.setOnClickListener {
            listener.onConfirmClick()
            if (isShowing)
                dismiss()
        }
    }

    fun setButtonText(strConfirm: String, strCancel: String) {
        btnOK?.text = strConfirm
        btnCancel?.text = strCancel
    }
}

Вот код вызова

private fun stopAcc() {
    val msg = ResUtils.getStringFromRes(R.string.acc_stop_acc_prompt_msg)
    CustomConfirmDialog(activity!!, msg, listener).apply {
        setButtonText("stopAcc", "startGame")
        setCancelable(false)
        show()
    }
}
...