我的ImageButton出现问题,因为它似乎与源图像一起调整大小。这是非常有问题的,因为我使用具有相同加权TableRows的TableLayout来实现统一的网格布局,但出于某种原因,特定的ImageButton正在使用图像调整自身大小并使整个行看起来比其他行更大,即使它们都有相同的布局重量。
空src: https://gyazo.com/b50ab6d7afb6608db0505d701a2a40c9
使用src,adjustViewBounds = true https://gyazo.com/e2a2dae581d1fae4503b6e130ced776d
使用src,adjustViewBounds = false https://gyazo.com/2623f08fcffea586d5b7917332ae7291
XML标记:
<ImageButton
android:id="@+id/stat_analyze"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/sp2_calc_button"
android:onClick="btnClicked"
android:src="@drawable/statistics_white"
android:adjustViewBounds="true"
android:scaleType="fitCenter"/>
更新: 到目前为止,我已经尝试用更小的版本和Android矢量资源替换来替换源图像,但到目前为止,我仍然坚持使用相同的结果。我想这意味着唯一的方法就是锁定布局高度。我已尝试以编程方式在运行时设置高度,但我仍然得到相同的结果。
更新: 我再次尝试,将图像调整为固定值。然而,我注意到,这个特定按钮不会占据整个区域,直到它达到远远超出预期高度的高度。我的意思是,例如,我将其设置为60dp,即使按钮本身尚未与父高度匹配,整个行也将开始占用更多空间。我不知道为什么会这样,因为这是我第一次看到这种情况发生。有人可以帮我这个吗?
答案 0 :(得分:0)
您是否尝试过scaleType
fitXY 属性:
android:scaleType="fitXY"