如何在android studio中使用kotlin访问父视图

0 人关注

我想从它的子视图 TextInputLayout 中访问 PasswordEditText (我的自定义视图从 AppCompatEditText 延伸而来)。

val editText = findViewById<PasswordEditText>(R.id.passwordEditText)
val textInputLayout = editText.parent as TextInputLayout

但上面的代码给出了java.lang.NullPointerException: null cannot be cast to non-null type com.google.android.material.textfield.TextInputLayout的错误

This is my xml

<com.google.android.material.textfield.TextInputLayout
                android:id="@+id/passwordEditTextLayout"
                style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginHorizontal="24dp"
                android:layout_marginTop="12dp"
                android:hint="@string/hint_password"
                app:passwordToggleEnabled="true"
                android:alpha="0"
                app:startIconDrawable="@drawable/ic_baseline_lock_24">
                <com.alifmaulanarizqi.submission1.customview.PasswordEditText
                    android:id="@+id/passwordEditText"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:inputType="textPassword"
                    tools:ignore="SpeakableTextPresentCheck" />
            </com.google.android.material.textfield.TextInputLayout>