Я отображаю изображение через ImageSwitcher с этой фабрикой:
view_background.setFactory {
val imageView = ImageView(this@MainActivity)
imageView.scaleType = ImageView.ScaleType.CENTER_CROP
imageView
}
И я правильно отображаю это 2341x1246 PNG
2,55 МБ изображение на эмуляторе Nexus 5:
Однако, если я использую его на Nexus 6, он вылетает:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.llovagn.t4r, PID: 4693
java.lang.RuntimeException: Canvas: trying to draw too large(142936136bytes) bitmap.
Вставив его в drawable-xxhdpi
, как предложено в это ответ, теперь это выглядит следующим образом на обоих устройствах:
Что я что-то, что я действительно не хочу (первый способправильный).Почему и как я могу решить эту проблему?