На самом деле, я также встретил проблемы. Я хочу, чтобы изображение моего приложения ImageView загружалось из ресурсов / вместо res / drawables, чтобы я мог динамически обновлять свое приложение из Интернета.
По моим тестам / ощущениям производительность, скорее всего, будет сильно отличаться, если вы не будете обращать внимания.
//v.setImageBitmap(ImageUtil.getBitmapFromAsset(this, "data/dog/dog_0001.png", 60, 60));
//v.setImageDrawable(ImageUtil.getDrawableFromAsset(this, "data/dog/dog_0001.png"));
v.setImageResource(R.drawable.dog_0001);
мое приложение будет выше в Activity в onCreate. Кажется, доказано, что setImageResource является самым быстрым.
причина с моей точки зрения в том, что декодирование из ресурса займет время, которое заблокирует поток пользовательского интерфейса, в то время как установка идентификатора ресурса происходит быстрее, чем декодирование. я видел код в setImageResource, который, кажется, также загрузить изображение. я не уверен, почему мое декодирование медленнее, чем setImageResource. но я чувствую, что setImageResource - самый быстрый. я пытаюсь разрешить декодирование асинхронно декодировать, а затем установить растровое изображение.