我一直在努力解决我认为简单的问题。我正在使用类在图像按钮上设置图像。我希望图像适合屏幕的约束,但没有拉伸。也就是说,如果它太宽而不适合屏幕,我希望将高度缩放以适应,以便它不会被拉伸。如果高度太高,我希望图像高度减小,从而缩小宽度。
我已经看过几次问这个问题了,我已经尝试了一些建议,但这对我来说绝对没有区别。我认为这可能与使用ImageButton而不是ImageView有什么关系?
以下是一些相关的代码块(严重破坏)......
在我班上:
ImageView img = (ImageButton) dialog.findViewById(R.id.fullsizeimage);
img.setScaleType(ImageView.ScaleType.CENTER_INSIDE); //Changing ScaleType here has no effect
img.setImageBitmap(useThisBitmap);
这是xml布局内容......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ImageButton
android:id="@+id/fullsizeimage"
android:background="@null"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:adjustViewBounds="true"
/>
</RelativeLayout>
XML文件中的一些垃圾可能是错误的。但是我已经改变了很多次,它有零效果。
任何和所有建议非常赞赏。
答案 0 :(得分:3)
我认为ImageButton将始终拉伸背景图像以填充整个背景。 ImageView可以很容易地自己点击,你试过吗?
更复杂的选项是使用自定义视图,可以按照您喜欢的方式在画布上绘制图像,并且可以使用onTouch侦听器。