Android 视图对象未显示在代码中。I';我正在制作一个自定义对话框

Android 视图对象未显示在代码中。I';我正在制作一个自定义对话框,android,xml,kotlin,customdialog,Android,Xml,Kotlin,Customdialog,} //这是用于自定义对话框的XML文件 open class BaseActivity : AppCompatActivity() { private var doubleBackToExitPressedOnce = false private lateinit var mProgressDialog: Dialog override fun onCreate(savedInstanceState: Bundle?) { val binding = ActivityBaseBin

}

//这是用于自定义对话框的XML文件

open class BaseActivity : AppCompatActivity() {

private var doubleBackToExitPressedOnce = false
private lateinit var mProgressDialog: Dialog

override fun onCreate(savedInstanceState: Bundle?) {
    val binding = ActivityBaseBinding.inflate(layoutInflater)

    super.onCreate(savedInstanceState)

}


fun showProgressDialog(text: String) {
    mProgressDialog = Dialog(this)
    mProgressDialog.setContentView(R.layout.dialog_progress)
    mProgressDialog.tv_progress_text.text = text

    mProgressDialog.show()



}


这是我的代码(kotlin),我使用视图绑定。我无法从showProgressDialog函数中的自定义对话框xml文件访问视图对象。但是,我尝试在fun showProgressDialog中为自定义对话框创建绑定实例,但这也不起作用。有谁能告诉我,问题是什么,我应该如何访问自定义对话框xml文件中的视图对象。setContentView也没有任何用处。

要在自定义对话框中使用视图绑定,您必须使用其生成的方法对自定义对话框进行膨胀,不能直接使用它

由于您尚未编写自定义对话框布局文件的名称,我假定它是
customDialog.xml
。现在,您可以使用此按钮充气并显示此自定义对话框

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal"
android:padding="10dp">

    <ProgressBar
        android:id="@+id/progressBar"
        android:layout_width="50dp"
        android:layout_height="50dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toStartOf="@+id/tv_progress_text"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
    android:id="@+id/tv_progress_text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="16dp"
    android:text="@string/pleaseWait"
    android:textSize="16sp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintStart_toEndOf="@+id/progressBar"
    app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>
非常感谢,它成功了
fun showProgressDialog(text: String) {
    mProgressDialog = Dialog(this)
    val customDialogBinding = CustomDialogBinding.inflate(layoutInflater, binding.root, false)
    mProgressDialog.setContentView(customDialogBinding.root)
    customDialogBinding.tv_progress_text.text = text
    mProgressDialog.show()
}