0

我有一个带有布局文件的活动,如下所示:

<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 个片段已经编码,每个片段都有自己的布局文件和类,现在无关紧要。说他们被称为这个例子:

片段1.java 片段2.java 片段3.java

我想知道如何将片段动态添加到如上所述的线性布局中。根据我的研究,我似乎需要一个片段管理器和一个 LayoutInflater,但我不知道该怎么做。

到目前为止,我有这个:

LinearLayout fragmentsLayout = (LinearLayout) findViewById(R.id.foodItemActvity_linearLayout_fragments);

    for(int i=0; i < noOfFragments;i++){
        //Add fragment to fragmentsLayout
    }

现在我只是不确定如何添加我想要的某些片段?

编辑:我如何指定片段的布局参数等细节?

4

2 回答 2

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();
于 2013-08-17T21:31:13.693 回答
0

您是否查看过 Android 开发人员指南中的 Fragments。它解释了如何以编程方式管理片段。http://developer.android.com/guide/components/fragments.html

于 2013-08-17T22:04:22.323 回答