答案 0 :(得分:31)
android:background="@drawable/eye"
自动生效。
android:src="@drawable/eye"
是我用来调整图像大小和按钮宽度和高度的所有问题...
答案 1 :(得分:12)
答案 2 :(得分:4)
有点晚了,但我总是为了'迟到然后永远' 我今天也有同样的问题,发现它在这里解释: http://www.anddev.org/tutorial_buttons_with_niceley_stretched_background-t4369.html
答案 3 :(得分:3)
答案 4 :(得分:2)
尝试使用ScaleType centerInside。
ScaleTypes未在Eclipse Layout设计器中正确呈现,因此请在正在运行的应用程序中进行测试。
答案 5 :(得分:2)
您是否尝试过如下布局布局宽度和layout_height?由于您使用wrap_content进行设置,因此图像按钮会扩展为源图像的高度和宽度。
<blink>
<ImageButton>
android:id="@+id/Button01"
android:scaleType="fitXY"
android:layout_width="80dip"
android:layout_height="80dip"
android:cropToPadding="false"
android:paddingLeft="10dp"
android:src="@drawable/eye">
</ImageButton>
</blink>
答案 6 :(得分:2)
您不必使用src属性
错误的方式(图像不适合按钮)
android:src="@drawable/myimage"
正确的方法是使用background atttribute
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/skin" />
其中 skin 是xml
skin.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- <item android:drawable="@drawable/button_disabled" android:state_enabled="false"/> -->
<item android:drawable="@drawable/button_pressed" android:state_pressed="true"/>
<!-- <item android:drawable="@drawable/button_focused" android:state_focused="true"/> -->
<item android:drawable="@drawable/button_normal"/>
</selector>
使用button_pressed.png和button_normal.png
这也可以帮助您创建具有4种按下,正常,禁用和聚焦状态的蒙皮按钮。 确保所有png的大小相同
答案 7 :(得分:1)
您还可以将背景设置为透明。所以按钮看起来很适合你的图标。
<ImageButton
android:id="@+id/Button01"
android:scaleType="fitcenter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:cropToPadding="false"
android:paddingLeft="10dp"
android:background="@android:color/transparent"
android:src="@drawable/eye" />
答案 8 :(得分:0)
我认为您已经解决了这个问题,并且正如其他答案所示
android:background="@drawable/eye"
可用。但我更喜欢
android:src="@drawable/eye"
android:background="00000000" // transparent
并且效果也很好。(当然以前的代码将图像设置为背景,另一个将图像设置为图像)但是根据您选择的答案,我猜您的意思是9补丁。