Форум программистов, компьютерный форум CyberForum.ru

Открыть изображение из галереи - Android

Восстановить пароль Регистрация
 
Kadagor
12 / 12 / 4
Регистрация: 17.09.2015
Сообщений: 45
27.09.2015, 13:39     Открыть изображение из галереи #1
Добрый день!
Хотел добавить в проект возможность загрузки картинки из галереи.
Создал activity с кнопкой и ImageView. По нажатию на кнопку должна открыться галерея, пользователь выбирает картинку, ImageView отображает выбранную картинку.

Переменные:
Java
1
2
3
private ImageView userAva;
private final int PICK_IMAGE = 2;
private Uri fileUri;

Обработчик нажатия кнопки:

Java
1
2
3
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, PICK_IMAGE);
И обрабатываю полученный данные:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == RESULT_OK) {
        switch (requestCode){
            ///…
 
            ///
            case PICK_IMAGE:
                fileUri = data.getData();
                final InputStream imageStream = getContentResolver().openInputStream(fileUri);
                final Bitmap selectedImage = BitmapFactory.decodeStream(imageStream);
                userAva.setImageBitmap(selectedImage);
            break;
        }
    }
}
В таком варианте все работает, но выбирать картинку при каждом запуске приложения не очень интересно. Хочу сохранить путь картинки в переменную и для отображения использовать именно данные переменной.
С этой целью думал использовать Uri.getPath().
Для начала хотел открыть картинку по заданному пути:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == RESULT_OK) {
        switch (requestCode){
            ///…
 
            ///
            case PICK_IMAGE:
                Uri img = data.getData();
                File filePath = new File(img.getPath());
                fileUri = Uri.fromFile(filePath);
                final InputStream imageStream = getContentResolver().openInputStream(fileUri);
                final Bitmap selectedImage = BitmapFactory.decodeStream(imageStream);
                userAva.setImageBitmap(selectedImage);
            break;
        }
    }
}
Но вот незадача, в данном варианте ImageView остается пустым и не могу понять в чем проблема
Может есть другой способ получить путь к изображению, либо открыть его?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.09.2015, 13:39     Открыть изображение из галереи
Посмотрите здесь:

Android Получить изображение из галереи
Какими объектами лучше пользоваться для создания галереи? Android
Изображение в ActionBar Android
Android получение фотографий из галереи Android
Android Создание галереи
Android Разработка фото галереи
Импорт картинок из галереи Android
Векторное изображение Android
Android Открыть фото из галереи
Загрузка фото из галереи на сервер Android
Android Открыть изображение на втором activity
выбор и обработка изображения из галереи Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 09:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru