从选择相机意图回来后片段已经激活

时间:2013-09-03 07:36:18

标签: android android-fragments

我有片段A,它会通过点击按钮调用片段B.

Fragment a = FragmentA
            .getInstance();

    // Supply index input as an argument.
    Bundle args = new Bundle();
    args.putBoolean(GlobalConstants.WANT_START_GAME, false);
    pokerOnlineProject.setArguments(args);

    FragmentTransaction transaction = getFragmentManager()
            .beginTransaction();
    transaction.replace(R.id.poker_online_container, A,
            "A");
    transaction.addToBackStack(null);
    transaction.commit();

在这个片段B中,我用以下代码调用Android OS中的相机应用程序:

Intent i = new Intent(Intent.ACTION_PICK,
            android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);

startActivityForResult(i,RESULT_LOAD_IMAGE);

之后,我点击后退按钮,我的应用程序将返回片段A而不是片段B,当我试图触摸片段A上的按钮时,我得到异常“Fragment already active”。

1 个答案:

答案 0 :(得分:-1)

您的照片保存在 PATH_TO_SAVE 位置。

你应该在onActivityResult上做这样的事情:

File file = new File(PATH_TO_SAVE);

Bitmap bmp = BitmapFactory.decodeFile(file.getPath());