在Android按钮中获取调整大小后的图像

3

我想设计一个TableLayout,里面有一些带有图标和文本的大按钮。我找到了一些类似的问题,但不是完全相同的 1。我的简化XML布局如下:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableRow android:id="@+id/TableRow01" android:gravity="center">
<Button android:text="@string/telephone" android:drawableTop="@drawable/phone" android:id="@+id/button_phone"></Button>
<Button android:text="@string/help" android:src="@drawable/help" android:id="@+id/button_help"></Button>
</TableRow>
</TableLayout>

图标图片有点大,我希望Android可以将它们调整大小,但是android:height参数会调整按钮的大小,而不是嵌入图像的大小。你有什么办法可以让一个带有文本和图像的按钮“可调整大小”吗?
1个回答

6
使用ScaleType属性(文档
编辑:有关如何支持多个屏幕尺寸的drawable的信息,请参见此处。如果您遵循Android约定,而不是尝试只使用非常大的drawable并在运行时调整它们以适应较小的屏幕,则会获得更好的性能和更少的问题。

3
抱歉,scaleType 属性适用于 ImageButton,而不适用于 Button。 - Jaime M.
非常抱歉没有仔细阅读您的问题。您不想调整可绘制资源本身的大小吗?有什么原因呢? - QRohlf
1
是的,我想要设计一个适用于多种屏幕尺寸的应用程序,因此我期望Android系统根据显示器大小调整可绘制资源的大小。 - Jaime M.
那么你正在寻找这个:http://developer.android.com/guide/practices/screens_support.html - QRohlf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接