android - onPause 在调用 onActivityResult 时直接触发

标签 android onpause

我在一个 Activity 中使用了 onActivityResult()onPause() 方法。 现在的问题是,每当 onActivityResult() 触发时,它最终都会调用 onPause(),因此应用程序会关闭。 如何防止这个问题? 代码:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK
            && null != data) {
        Uri selectedImage = data.getData();
        String[] filePathColumn = { MediaStore.Images.Media.DATA };

        Cursor cursor = getContentResolver().query(selectedImage,
                filePathColumn, null, null, null);
        cursor.moveToFirst();

        int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
        picturePath = cursor.getString(columnIndex);
        cursor.close();

        ImageView imageView = (ImageView) findViewById(R.id.imgView);
        imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));
    }
}

@Override
protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
    finish();
}

最佳答案

请使用 bool 变量并激活它的 onActivityForResult 方法。

@Override
protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
if(!isActivate)
    finish();
}

关于android - onPause 在调用 onActivityResult 时直接触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16812652/

相关文章:

java - 我们如何从firebase下载android studio中的文件(pdf),使其不会出现在手机的内部存储中?

java - 使用 sharedPreferences 的 onPause 和 onResume 方法

android - Android SDK 23 中的 Non Scroll RecyclerView 滚动问题

android - 在使用适配器和可绘制对象时尝试在 ListView 中分隔项目。 margin 不起作用

android - 如何将模式工作表顶部边缘更改为圆形不起作用

android - 调用 finish() 不会完成 Activity

android - onCreate() 在 Activity 停止(但未销毁)时调用。仅在安装后

java - 在 Android 应用程序中从远程数据库缓存值的正确方法

android - AsyncTask 是否存在并发错误?

android - 假 KeyEvent 不能*完全*像 "real"按钮一样工作。为什么?