扩大ImageButton响应点击区域的方法

视觉的切图是一个圆的小button图片,在实际开发的时候如果直接用button,然后把background设置为小图片,可能导致按钮的可点击区域太小,但是又不想去重写一个button,那么可以试一下以下的办法

设置一个ImageButton的属性:

   <ImageButton 
        android:layout_width="37dp" 
        android:layout_height="34dp" 
        android:background="@null"              
android:src
="@drawable/background"/>

src与background区别就是把图片设置为background就会拉伸图片填充整个view,而src只显示原图片的大小,还可以通过设置android:scaletype来设置src图片的显示格式。

这样按钮的可点击区域就扩大到37*34dp,而background图片则在该区域中居中显示。

附:android:scaletype可设置的值

CENTER /center 在视图中心显示图片,并且不缩放图片

CENTER_CROP / centerCrop 按比例缩放图片,使得图片长 (宽)的大于等于视图的相应维度

CENTER_INSIDE / centerInside 按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度

FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示

FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置

FIT_START / fitStart 把图片按比例扩大/缩小到视图的最小边,显示在视图的上部分位置

FIT_XY / fitXY 把图片不按比例缩放到视图的大小显示

MATRIX / matrix 用矩阵来绘制

原文地址:https://www.cnblogs.com/txlbupt/p/3465478.html