我已经使用此代码启动了从平板电脑库中选择图片的意图。
Intent pick_picture_intent = new Intent(Intent.ACTION_GET_CONTENT);
pick_picture_intent.setType("image/*");
startActivityForResult(pick_picture_intent, PICK_PICTURE);
一切正常,使用startActivityForResult(),将图像放入图像视图中。 (仅在风景模式中),当我在PORTRAIT模式中尝试做同样的事情时,它不起作用。
startActivityFroResult()
中的代码:
if(data != null && data.getData() != null) {
Uri uri = data.getData();
}
Cursor cursor = getContentResolver().query(uri, new String[] { android.provider.MediaStore.Images.ImageColumns.DATA }, null, null, null);
cursor.moveToFirst();
try {
String imagePath = cursor.getString(0);
Bitmap bitmap = BitmapFactory.decodeFile(imagePath);
ImageView imageView = new ImageView(context);
imageView.setImageBitmap(bitmap);
myLayout.addView(imageView);
} catch (Exception e) {
e.printStackTrace();
} finally {
cursor.close();
}
为什么会这样?
我被抛出了这个错误:
android.database.sqlite.DatabaseObjectNotClosedException:应用程序未关闭此处打开的游标或数据库对象