我正在尝试将同一片段的多个实例添加到活动中。示例代码是
FragmentManager fm = getSupportFragmentManager();
Fragment fragment = fm.findFragmentById(R.id.fragment_content);
FragmentTransaction ft = fm.beginTransaction();
for (int x = 1; x < 5; x = x + 1) {
Log.i("frag","x="+x);
ft.add(R.id.fragment_content, new SpecimenFragment(),"x_"+x);
}
ft.commit();
当活动运行时,只添加了一个片段实例 - 为什么?
有关信息,片段将被插入到活动和XML的布局中 代码中引用的R.id.fragment_content定义为:
<FrameLayout
android:id="@+id/fragment_content"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
答案 0 :(得分:1)
问题似乎是使用FrameLayout
作为片段的容器。我将其更改为
<LinearLayout
android:id="@+id/fragment_content"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" />
它现在运作正常。