ActivityにNFC フォアグラウンド ディスパッチを実装しました。コードは正常に動作し、NFC タグが私の電話に近づくと、が呼び出されます。onNewIntent(Intent intent)
ここで、呼び出されたときにフラグメント(MyFragment.java)を表示したいと思いonNewIntent(Intent intent)
ます。FragmentクラスにはresolveIntent(Intent intent)
メソッドが定義されています。
これが私のアクティビティのコードです:
public class MainActivity extends Activity{
…
@Override
public void onNewIntent(Intent intent) {
super.onNewIntent(intent);
FragmentManager fragmentManager = activity.getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
//How to pass the 'intent' to MyFragment?
MyFragment fragment = new MyFragment();
fragmentTransaction.replace(R.id.placeholder, fragment, fragmentName);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
}
MyFragment.javaのコード
public class MyFragment extends Fragment{
…
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
...
}
@Override
public void onResume(){
super.onResume();
//How to get 'intent' here
resolveIntent(intent);
}
private void resolveIntent(Intent intent){
...
}
}
私の質問は、 MyFragment in でインテントを処理できるように、 intent
fromonNewIntent(Intent intent)
をMyFragmentに渡すにはどうすればよいですか?onResume()