java – Android:如何防止在ImageView或ImageButton中扩展图像?

如果视图或按钮使用“fill_parent”或“weight”进行拉伸,我如何防止在 ImageView或 ImageButton中自动缩放位图?

这将是有用的,例如,在屏幕顶部创建一个4按钮工具栏,其中按钮的间隔相等,但是即使我使用scaleType =“center”,按钮内的图像仍然保持拉伸,这应该防止根据文档缩放,但它不.

任何见解都不胜感激!

谢谢,

解决方法

我发现当使用android:background自动缩放您正在使用的图像的大小.

我尝试使用android:src将图像放在视图中.图像没有缩放,但是我无法使图像相对于视图的大小居中.

所以我试图使整个按钮它是自己的相对布局,这是我使用的:

<RelativeLayout android:id="@+id/RelativeLayout01" 
                android:layout_height="fill_parent" 
                android:layout_width="fill_parent">
                <ImageButton android:id="@+id/ImageButton01"    
                             android:layout_height="fill_parent"
                             android:layout_width="fill_parent"></ImageButton>
                <ImageView android:id="@+id/ImageView01"
                           android:layout_width="wrap_content"
                           android:layout_height="wrap_content" 
                           android:background="@drawable/cardback1" 
                           android:layout_centerInParent="true"></ImageView>
</RelativeLayout>

ImageButton在后台并且将始终与布局大小相同.
然而,ImageView将始终保持在RelativeLayout的中心位置,并且不会缩放.
这样,RelativeLayout本身就可以增长和移动,按钮顶部的Image将始终保持相同的大小,但是按钮会增长.然而,如果布局变得小于图像本身,则图像将会缩小.

我认为这是你正在寻找的.可能会有更好的方法来做到这一点,但现在我可以想出来.

相关文章

应用场景 C端用户提交工单、工单创建完成之后、会发布一条工...
线程类,设置有一个公共资源 package cn.org.chris.concurre...
Java中的数字(带有0前缀和字符串)
在Java 9中使用JLink的目的是什么?
Java Stream API Filter(过滤器)
在Java中找到正数和负数数组元素的数量