0

我试图在使用 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>
4

0 回答 0