У меня есть деятельность с файлом макета следующим образом:Как прагматично добавить динамическое количество фрагментов деятельности
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="2"
android:fillViewport="true"
android:gravity="top" >
<LinearLayout
android:id="@+id/foodItemActvity_linearLayout_fragments"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
//>>>> Fragments to go here
</LinearLayout>
</ScrollView>
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.35"
android:gravity="bottom"
android:orientation="horizontal" >
<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:onClick="orderFoodItemClicked"
android:text="Order this Item Now" />
<Button
android:id="@+id/button2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:onClick="backToMenuItemClicked"
android:text="Back To Menu" />
</LinearLayout>
Я тогда 5 фрагментов уже закодированных каждый со своими файлами верстки и классы, которые сейчас неактуальны. говорят, что они называют для этого примера:
fragment1.java fragment2.java fragment3.java
Я хочу знать, как я могу динамически добавлять фрагменты в линейной компоновке, как указано выше. Из моих исследований мне кажется, что мне нужен менеджер фрагментов и LayoutInflater, но я не уверен, как это сделать.
До сих пор у меня есть это:
LinearLayout fragmentsLayout = (LinearLayout) findViewById(R.id.foodItemActvity_linearLayout_fragments);
for(int i=0; i < noOfFragments;i++){
//Add fragment to fragmentsLayout
}
Теперь я просто не уверен, о том, как идти о добавлении определенных фрагментов я хочу?
EDIT: И как указать детали, такие как параметры макета для фрагмента?
IT компилируется, но он не отображает ни одного из фрагментов: \t 'ImageFragment fb = new ImageFragment(); \t \t \t ft.add (R.id.foodItemActvity_linearLayout_fragments, fb, "fragment" + fragCount); \t \t fragCount ++; \t \t ft.commit(); ' – Zapnologica
@ Zapnologica Что делать, если вы добавляете только один фрагмент? Вы уверены, что фрагменты раздуваются правильно? –
Они отображаются, если я вручную помещал их в xml-файл? – Zapnologica