我有一个布局文件的活动如下:
<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
我想知道如何动态地将片段添加到线性布局中,如上所述。根据我的研究,我似乎需要一个Fragment管理器和一个LayoutInflater,但我不知道如何做到这一点。
到目前为止,我有这个:
LinearLayout fragmentsLayout = (LinearLayout) findViewById(R.id.foodItemActvity_linearLayout_fragments);
for(int i=0; i < noOfFragments;i++){
//Add fragment to fragmentsLayout
}
现在我只是不确定如何添加我想要的某些片段?
编辑: 如何指定片段的布局参数等详细信息?
答案 0 :(得分:1)
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
for(int i=0; i < noOfFragments;i++){
ft.add(R.id.foodItemActvity_linearLayout_fragments, fragments[i], "fragment tag" + i);
}
ft.commit();
答案 1 :(得分:0)
您是否看过Android开发者指南中的片段。它解释了如何以编程方式管理片段。 http://developer.android.com/guide/components/fragments.html