android startActivityForResult 不包括 Bundle
android startActivityForResult not including Bundle
我正在开发一个应用程序。最小 SDK 是 14。现在我要从 Fragment 打开新的 Activity,当用户点击片段上的按钮时。
//打开新代码activity
newFavoriteFAB.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent mIntent = new Intent(getActivity(), CategoriesActivity.class);
Bundle mBundle = new Bundle();
mBundle.putInt(BundleConstants.OPERATION_TYPE, OperationTypes.ADD_FAVORITE);
mIntent.putExtras(mBundle);
startActivityForResult(mIntent, ActivityStartRequestCode.ADD_FAVORITE);
}
});
//activity onCreate方法,试图打开
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
Log.d(TAG, "onCreate");
//here, when i am going to get it, i see that bundle argument is null
我试图通过 activity,但它告诉我:呼叫需要 API 级别 16。因为我使用 API 14 作为最小值。
getActivity().startActivityForResult(mIntent, ActivityStartRequestCode.ADD_FAVORITE, mBundle);
请提供可行的解决方案。
谢谢
要从启动的 activity 接收数据,请在 onCreate
方法中使用 getIntent()
。
即
Intent mIntent = new Intent(getActivity(), CategoriesActivity.class);
mIntent.putExtra(BundleConstants.OPERATION_TYPE, OperationTypes.ADD_FAVORITE);
startActivityForResult(mIntent, ActivityStartRequestCode.ADD_FAVORITE);
接收,在onCreate()
中使用:
Intent received = getIntent();
int var = received.getInt(....);
无论如何,如果您想要捆绑包,请使用如下内容:
或者这个:
我正在开发一个应用程序。最小 SDK 是 14。现在我要从 Fragment 打开新的 Activity,当用户点击片段上的按钮时。
//打开新代码activity
newFavoriteFAB.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent mIntent = new Intent(getActivity(), CategoriesActivity.class);
Bundle mBundle = new Bundle();
mBundle.putInt(BundleConstants.OPERATION_TYPE, OperationTypes.ADD_FAVORITE);
mIntent.putExtras(mBundle);
startActivityForResult(mIntent, ActivityStartRequestCode.ADD_FAVORITE);
}
});
//activity onCreate方法,试图打开
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
Log.d(TAG, "onCreate");
//here, when i am going to get it, i see that bundle argument is null
我试图通过 activity,但它告诉我:呼叫需要 API 级别 16。因为我使用 API 14 作为最小值。
getActivity().startActivityForResult(mIntent, ActivityStartRequestCode.ADD_FAVORITE, mBundle);
请提供可行的解决方案。 谢谢
要从启动的 activity 接收数据,请在 onCreate
方法中使用 getIntent()
。
即
Intent mIntent = new Intent(getActivity(), CategoriesActivity.class);
mIntent.putExtra(BundleConstants.OPERATION_TYPE, OperationTypes.ADD_FAVORITE);
startActivityForResult(mIntent, ActivityStartRequestCode.ADD_FAVORITE);
接收,在onCreate()
中使用:
Intent received = getIntent();
int var = received.getInt(....);
无论如何,如果您想要捆绑包,请使用如下内容:
或者这个: