Se io per esempio ho il layout vuoto come questo:Aggiungere più visualizzazioni personalizzate per il layout di programmazione
layout1.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
</LinearLayout>
e alcuni altri layout in questo modo:
layout2.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView 1" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 2" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 3"
android:layout_weight="1"/>
</LinearLayout>
Vorrei aggiungere layout2.xml
a layout1.xml
p rogrammatically. Avrei bisogno di avere più versioni diverse layout2.xml
che aggiungerei quando voglio. Ognuno avrebbe un testo diverso su TextView e pulsanti.
In caso di regolare Android View Io di solito farlo allo stesso modo come questa con addView
:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv1 = new TextView(this);
tv1.setText("HELLO");
my_linear_layout.addView(tv1);
Button btn2 = new Button(this);
bt2.setText("WORLD");
my_linear_layout.addView(btn2);
}
Come posso farlo se non ho qualcosa di semplice come TextView o il pulsante, e se ho la mia vista definita xml?
Sarebbe possibile in qualche modo inserire tutte le viste all'interno dell'adattatore come per un ListView e quindi ottenerlo quando necessario e chiamare semplicemente addView
su quelle Visualizzazioni?
Usa LayoutInflator per fare questo Vedi http://stackoverflow.com/questions/2335813/how-to-inflate -una-vista-con-un-layout – user3917131