FragmentTransactionがFragmentを置き換えるかどうかを確認する方法について少し混乱します。つまり、このメソッドを呼び出すと、XMLファイルのLayout
への参照を作成するということです。この方法ではLayout
をFragment
に置き換えず、Layout
の中のwhatsをFragment
に置き換えます。このため、レイアウトを参照して更新されているかどうかを確認することはできません。これに加えて、XML内にFragment
を定義して、ではなく、View
としてキャストされるため、参照することはできません。このメソッドの実行をテストするにはどうしたらいいですか?ありがとうございました!FragmentTransaction.replace()更新フラグを確認する方法
0
A
答えて
0
質問は私には不明な点があるので、私は自分の能力のうち最高のものに答えるつもりです。メソッドの特定の行が実行されたかどうかを確認する方法を尋ねるだけの場合は、https://developer.android.com/reference/android/util/Log.htmlを使用してログに記録できます。あなたが特定のフラグメントが正常にレイアウトに配置されている(のはと呼ばれるレイアウトファイルにしましょう)かどうかを確認するために探しているなら
、あなたが使用してチェックすることができます。
Fragment myFragment = getSupportFragmentManager.findFragmentByID(R.id.fragment1); if (myFragment != null) // has not been put in your layout successfully.
フラグメントのトランザクションを(あればあなたが 'commit()'のしばらくしてから 'commitNow()'トランザクションを使わないでください)、 'commit()'の直後に 'myFragment == null'を得ることができます。 – isabsent