これが私のセットアップです。
アクティビティ A1 によってホストされるフラグメント F1。
アクティビティ A2 によってホストされるフラグメント F2。
F1 は startActivity() を介して A2 を呼び出し、エクストラ (F2 に存在する静的メンバー変数 (キーのような構造)) を渡します。
インテント エクストラが startActivity() を介して F2 の静的メンバー変数に直接送られる場合、なぜgetActivity().getIntent().get___extra()
インテント エクストラを取得するために使用する必要があるのでしょうか。
例 :
F1 (ListFragment.class)
A1 (ListActivity.class)
F2 (DetailFragment.class)。これには、文字列である静的メンバー KEY があります。
A2 (DetailActivity.class)
順序 :
// In ListFragment.class
Intent i = new Intent(getActivity(),DetailActivity.class)
i.putExtra(F2.KEY,'xxx');
i.startActivity();
//In DetailFragment.class
String s = getActivity().getIntent.getStringExtra(KEY); --Statement 1
ステートメント 1 の代わりに、startActivity() がこの静的メンバーにデータを配置すると仮定しているため、KEY データに直接アクセスできないのはなぜですか..この仮定は正しくありませんか?