0

プログラムでフレームレイアウトを作成しています。次に、プログラムでフラグメントを作成します..次に、フラグメントをフレームレイアウトに追加します..このプロセスは、ボタンをクリックするたびに行われます。フレームレイアウト id とフラグメント タグについては、整数インクリメント変数を作成しました (「id」は開始時に「0」として開始されます)。

新しいIDで新しいフレームレイアウトを作成し、新しいタグでフラグメントを作成するボタンをクリックすると、そのフレームレイアウトにフラグメントが追加されます...そして、論争の的となるオーバーラップビュー..

ここで私のコードの下に、

public void add_tab(View view)
{
    id++;
    String b = String.valueOf(id);
    tab_frame = new FrameLayout(this);
    FrameLayout.LayoutParams layoutparams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.FILL_PARENT,Gravity.CENTER_HORIZONTAL|Gravity.CENTER_VERTICAL);
    tab_frame.setLayoutParams(layoutparams);
    tab_frame.setId (id);


    FragmentManager fragment_manager1 = getSupportFragmentManager ();                         // fragment manager for dealing with fragments
    frag_one frag_one_obj = new frag_one();                                                   // creating a onj of fragment "frag_one"
    FragmentTransaction fr_transaction = fragment_manager1.beginTransaction ();
    fr_transaction.add (tab_frame.getId (),frag_one_obj,b);
    fr_transaction.addToBackStack ("Fragment Add");
    fr_transaction.commit ();
    frag_one_obj.setArguments (bundle);
    tab_frame.setVisibility (View.VISIBLE);
}

デバッグすると、logcat でこのエラーが発生します。

No view found for id 0x1 (unknown) for fragment frag_one{42bb0cc8 (d45032ae-5aa4-485f-87a6-da20f3d5ce1f) id=0x1 1}

なぜそれが起こるのかわかりません..私はすでにフレームレイアウトを作成していて、そのIDを割り当てています..しかし、このエラーは、この特定のIDに割り当てられたビューがないことを示しているため、フラグメントを追加できません..

Plsは私を助けて..事前に感謝..

4

1 に答える 1