2

ビューにフラグメントを追加しようとしています。String Array があり、それぞれに新しいフラグメントを作成したいと考えています。簡単な作業のようです。

String[] items = getResources().getStringArray(R.array.myArray);

for (int i = 0; i < items.length; i++) {

    Bundle bundle = new Bundle();
    bundle.putString("category", items[i]);
    Fragment frag = new MyFragment();
    frag.setArguments(bundle);

    FragmentTransaction ft = getFragmentManager().beginTransaction();
    ft.add(R.id.mga_viewParentContainer, frag, "frag_" + i);
    ft.commit();

    Log.i ("FT commit called on item:", items [i]);

} // for loop

これにより、配列内のすべてのアイテムに対して新しいフラグメントが作成されますが、すべてのフラグメントは配列内の最後のアイテムから「カテゴリ」バンドル アイテムを取得しています。したがって、すべてのフラグメントは同じ情報を膨らませます。

ただし、ログはすべてのアイテムを本来あるべき姿でレポートします。

なぜこうなった?

4

0 に答える 0