Я работаю над приложением Android, которому необходимо загрузить изображение и отобразить его внутри ImageView. Bitmap передается в основной файл Java и добавил к просмотру изображения, как это:Растровое изображение в ImageView обрезано с экрана
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>
Любая идея, почему мое изображение отрезают?
Спасибо!
Спасибо! Это устранило проблему, однако теперь изображения, которые достаточно малы, чтобы поместиться на экране, выровнены в верхнем левом углу. Любой способ исправить это? – Computerish
Используйте 'centerCrop' вместо' center'. Все варианты можно найти здесь с очень ясным объяснением: [ImageView.ScaleType documentation] (http://developer.android.com/reference/android/widget/ImageView.ScaleType.html). Предупреждение: в моем графическом редакторе Eclipse Graphical Layout некоторые из этих типов шкалы отображаются неправильно. Используйте Силу и доверяйте документации, на реальных устройствах и эмуляторах она работает. –
Есть ли способ сделать это, но иметь возможность анимировать изображение без его обрезания? – richy