只加载了10个片段中的2个

时间:2017-10-01 21:52:24

标签: android android-fragments

我正在尝试将10个片段加载到ScrollView内部的RelativeLayout,但只加载了2个。片段代码如下,它应该工作。有10个RId等于一个DId(我正在使用虚拟数据)因此为什么应该有10个片段加载而不是我的两个。我感觉这与RelativeLayout不能超过2个片段有关,因为它的高度固定为match_parent。

for (String DId: DIds){
    for (String RId: RIds){
        if (DId.equals(RId)){
            //RId found
            InformationPackage informationPackage = new InformationPackage(DId);                                            

            Bundle rBundle = new Bundle();
            rBundle.putParcelable("InformationPackage", informationPackage);

            RFragment rFragment = new RFragment();
            rFragment.setArguments(rBundle);

            String key = "rFragment" + fragmentCreationIterator;
            fragmentCreationIterator++;

            fragmentTransaction.add(R.id.RContainer, rFragment, key);
        }
    }
}

fragmentTransaction.commit();

以下是XML。

<ScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#ffffff">

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"

                android:id="@+id/RContainer">
            </RelativeLayout>

        </ScrollView>

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

ZeroOne的评论是答案,将RelativeLayout更改为LinearLayout修复了所有问题。我不知道它为什么会起作用,但你去了。