我已在我的 Activity 中实现了NFC前台调度。该代码工作正常,当 NFC 标签靠近我的手机时,会调用 onNewIntent(Intent Intent)
。
现在,我想在调用 onNewIntent(Intent Intent)
时显示 Fragment(MyFragment.java)。 Fragment 类中定义了 resolveIntent(Intent Intent)
方法。
这是我的 Activity 的一些代码:
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){
...
}
}
我的问题是如何将intent
从onNewIntent(Intentintent)
传递到MyFragment,以便我可以处理<onResume()
中的strong>MyFragment?
最佳答案
我发现Intent是一个parcelable对象,我可以使用bundle.putParcelable()方法将intent实例传递给下一个fragment。
关于android - 将 Intent 传递给我的 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17144512/