Ich verwende ein benutzerdefiniertes Steuerelement, das ein Spinner im relativen Layout hat. In meiner Aktivität muss ich zwei dieser benutzerdefinierten Steuerelemente verwenden. Das Problem besteht darin, dass beim Zugriff auf den Spinner aus der Aktivität dieselbe ID zurückgegeben wird.enthalten benutzerdefinierte Layouts mit gleichen Kind-IDs
Code für benutzerdefinierte Steuerung
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<Spinner
android:id="@+id/spinner"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:background="@drawable/bg_white"
android:popupBackground="@drawable/bg_white"/>
<Button
android:layout_width="15dp"
android:layout_height="10dp"
android:layout_marginRight="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="20dp"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_centerInParent="false"
android:clickable="false"
android:background="@drawable/btn_dropdown"/>
</RelativeLayout>
Aktivitätscode:
RelativeLayout rl_category,rl_subcategory;
Spinner sp_category,sp_subcategory;
rl_category=(CustomSpinner) findViewById(R.id.sp_category);
rl_subcategory=(CustomSpinner) findViewById(R.id.sp_subcategory);
sp_category=(Spinner) rl_category.findViewById(R.id.spinner);
sp_subcategory=(Spinner) rl_subcategory.findViewById(R.id.spinner);
Wenn Android unterscheidet nicht diese IDs in derselben Aktivität dann, wie sollte ich mehrere benutzerdefinierte Layouts in Aktivität hinzufügen.