Фрагмент диалога не показывает фотографию, которую я выбрал из галереи
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (resultCode == Activity.RESULT_OK && requestCode ==IMAGE_PICK_CODE){
image_view.setImageURI(data?.data)
}
}
Можете ли вы дать нам более подробную информацию. Вы пытались исследовать logcat? Что это показывает? Кроме того, вы используете файловый провайдер?
@ saiful103a Тот же код работает, когда мы пробуем activity_main в качестве демо, но dialogfragment тоже не работает. Я тоже не получаю никаких ошибок. Я могу выбрать из галереи, но не могу просмотреть изображение. Также в DialogFragment
@blackapps Я выбираю картинку из галереи эмулятора
Возможно. Но попробуй картинку с меньшим разрешением был комментарий.
Попробуйте преобразовать изображение в Bitmap
, а затем используйте .setImageBitmap()
, чтобы установить изображение в ImageView
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
val imageUri = data?.data
val inputStream: InputStream?
try {
inputStream = imageUri?.let { activity?.contentResolver.openInputStream(it) }
// get a bitmap from a stream
val image = BitmapFactory.decodeStream(inputStream)
image_view.setImageBitmap(image)
} catch (e: FileNotFoundException) {
Log.d("TAG", "File not found: " + e.message)
}
}
Неразобранная ссылка ContentResolver error
использовать активность?.contentResolver, потому что contentResolver исходит из активности, а не из фрагмента.
@ saiful103a Я использую DialogFragment
@ezgiozkan ты пробовал activity?.contentResolver
?
Выберите изображение с гораздо более низким разрешением.