保持按钮可绘制图像尺寸为原始尺寸
keep button drawable image dimensions as original
我创建了一个应用程序,我在其中使用 Google 图书 API。
作为他们要求的属性的一部分,我需要在每个查询结果中添加以下 button:
现在,我想将该图像用作按钮的背景,但我得到了以下结果:
如您所见,它似乎被拉伸了,质量很差。
我用的xml是:
<ImageButton
android:id="@+id/tv_Link"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_alignStart="@+id/imagecard"
android:layout_alignEnd="@+id/imagecard"
android:layout_alignBottom="@+id/imagecard"
android:background="@drawable/gbs_preview_button"
android:elevation="50dp"
android:fontFamily="@font/assistant_semibold"
android:gravity="center"
android:textColor="@color/colorLightPurple"
android:textSize="8sp" />
为了修复它,我决定使用位图:
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:gravity="center"
android:src="@drawable/gbs_preview_button"
android:tileMode="disabled"/>
问题是变小了成这样(质量好,就是小):
此尺寸太小,因为它们要求高度为 24dp。
有什么方法可以将此图像添加到按钮,使其高度为 24dp 并仍然保持图像质量?
谢谢
由于您希望将高度硬编码为 24dp
,因此您也可以将宽度硬编码为一个值,以保持原始图像尺寸的纵横比为 (88 x 31)。
因此,将宽度设置为 68dp
而不是 wrap_content
我创建了一个应用程序,我在其中使用 Google 图书 API。
作为他们要求的属性的一部分,我需要在每个查询结果中添加以下 button:
现在,我想将该图像用作按钮的背景,但我得到了以下结果:
如您所见,它似乎被拉伸了,质量很差。
我用的xml是:
<ImageButton
android:id="@+id/tv_Link"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_alignStart="@+id/imagecard"
android:layout_alignEnd="@+id/imagecard"
android:layout_alignBottom="@+id/imagecard"
android:background="@drawable/gbs_preview_button"
android:elevation="50dp"
android:fontFamily="@font/assistant_semibold"
android:gravity="center"
android:textColor="@color/colorLightPurple"
android:textSize="8sp" />
为了修复它,我决定使用位图:
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:gravity="center"
android:src="@drawable/gbs_preview_button"
android:tileMode="disabled"/>
问题是变小了成这样(质量好,就是小):
此尺寸太小,因为它们要求高度为 24dp。
有什么方法可以将此图像添加到按钮,使其高度为 24dp 并仍然保持图像质量?
谢谢
由于您希望将高度硬编码为 24dp
,因此您也可以将宽度硬编码为一个值,以保持原始图像尺寸的纵横比为 (88 x 31)。
因此,将宽度设置为 68dp
而不是 wrap_content