ImageView.setImageURI НЕ работает при попытке назначить R.drawable.X Uri

относится к:

Требуется предложение о смешанном изображении «Uri / int id» ambient

Теперь моя проблема в том, что:

ImageView imgView=(ImageView)findViewById(R.id.imgView); Uri imgUri=Uri.parse("android.resource://my.package.name/"+R.drawable.image); imageView.setImageURI(imgUri); 

не работает . Зачем?

я знаю это

 imgView.setImageDrawable(Drawable.createFromStream( getContentResolver().openInputStream(imgUri), null)); 

Работа.

Но это НЕ решает мою проблему. Потому что я хочу установить изображение с помощью uri независимо, если это происходит из ресурса или из камеры ACTION_PICK намерения …

Любые предложения приветствуются. Спасибо. С уважением

Solutions Collecting From Web of "ImageView.setImageURI НЕ работает при попытке назначить R.drawable.X Uri"

Попробуй это

 Uri imgUri=Uri.parse("android.resource://my.package.name/"+R.drawable.image); imageView.setImageURI(null); imageView.setImageURI(imgUri); 

Это обходной путь для обновления ImageButton, который пытается кэшировать предыдущее изображение Uri. Передача null эффективно сбрасывает его.

Решение, предложенное в этой книге: Sams Teach Yourself Разработка приложений для Android за 24 часа – очень рекомендуется читать.

imageView.postInvalidate() работает. Или imageView.invalidate() если вы находитесь в потоке пользовательского интерфейса.