Почему мое изображение не отображается (из галереи) в портретном режиме? - PullRequest
1 голос
/ 01 сентября 2011

Я использовал этот код, чтобы начать собирать изображение из галереи планшета.

Intent pick_picture_intent =  new Intent(Intent.ACTION_GET_CONTENT);
pick_picture_intent.setType("image/*");
startActivityForResult(pick_picture_intent, PICK_PICTURE);

Все отлично работает, с startActivityForResult (), когда изображение помещается в представление изображения.(ТОЛЬКО В РЕЖИМЕ ЛАНДШАФТА), однако, когда я пытаюсь сделать то же самое в РЕЖИМЕ ПОРТРЕТА, он не работает.

Код в 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: Приложение не закрывало курсор или объект базы данных, который был открыт здесь

...