Растровое изображение в ImageView обрезается с экрана
Вопрос
Я работаю над приложением Android, которое необходимо загрузить изображение и отображать его внутри ImageView. Bitmap передается в главный файл Java и добавлен к изображению, как это:
comic = (ImageView) findViewById(R.id.comic);
comic.setImageBitmap(c.getImageBitmap());
Это работает, за исключением того, что левая сторона изображения исчезает с экрана. ImageView находится в ScrollView, который поддерживает правильный размер. Это означает, что есть черное пространство справа в ScrollView, а изображение разрезается слева.
XML для ImageView это:
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<HorizontalScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/comic"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_gravity="center"
android:src="@drawable/xkcdlogo" />
</HorizontalScrollView>
</ScrollView>
Любая идея, почему мой образ отрезан?
Спасибо!
Решение
Вы пробовали настроить Android: Scaletype = «Центр», а не Android: Layout_Gravity = "Center"?
Это будет центрировать изображение в ImageView без масштабирования.
Другие советы
Android: Scaletype = "Центркроп"
Решение, которое, наконец, сработало для меня, было установить внутренний ImageView, чтобы иметь фиксированную высоту и ширину, превышающую наибольшее изображение, добавьте много прокладки, а затем установить Android: Scrollx и Android: Collly в XML, чтобы получить размещенные изображения где мне нужно было. Это исправило проблему с изображениями, охваченными в горизонтальном свитке.