我试图在使用 View.GetChildAt 时返回一个包装类,但它给了我一个 IllegalCastException。我知道我要返回的孩子是 EditText
MyEditText firstName = (MyEditText)infoLayout.GetChildAt(3);
注意:在这种情况下,我不能使用 FindByID。
我猜这与尝试将基类转换为派生类有关,但我希望有一种解决方法。
这是我的 xml 布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/relativeLayout1">
<TextView
android:text="Type"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView1"
android:textSize="20dp"
android:layout_marginTop="30dp"
android:layout_marginLeft="10dp" />
<Spinner
android:layout_width="200dp"
android:layout_height="45dp"
android:layout_toRightOf="@id/textView1"
android:id="@+id/sp_type"
android:layout_alignBottom="@id/textView1"
android:layout_marginLeft="20dp" />
<TextView
android:text="First Name"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView2"
android:textSize="20dp"
android:layout_marginTop="20dp"
android:layout_below="@id/textView1"
android:layout_alignLeft="@id/textView1" />
<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/textView2"
android:id="@+id/et_firstName"
android:layout_alignBottom="@id/textView2"
android:layout_marginLeft="10dp" />
</RelativeLayout>