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(....);

无论如何,如果您想要捆绑包,请使用如下内容: 或者这个: