gpt4 book ai didi

android - 即使在 XML 中定义了大小,图像也不会调整大小 (Android Studio)

转载 作者:行者123 更新时间:2023-12-05 00:04:38 25 4
gpt4 key购买 nike

我想用这样的图像制作按钮:
What I want to make
此按钮的文本上方有图像,图像大小已调整为 512x512。

当我搜索谷歌时,有一些方法可以实现这一点。但是我认为将 TextImage 放在 LinearLayout 中并注册 onClick 看起来不太好,所以我决定使用drawableTop 代替。

    <Button
android:id="@+id/btn_gps"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="8dp"
android:drawableTop="@drawable/main_icon_gps"
android:padding="20dp"
android:text="@string/main_btn_gps"
android:visibility="visible"
app:layout_constraintBottom_toTopOf="@+id/guideline_h60"
app:layout_constraintEnd_toEndOf="@+id/guideline_v50"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/guideline_h40" />

原始图像是 512x512,所以我在 drawable 目录中制作了另一个 XML 文件(main_icon_gps)。

<!-- @drawable/main_icon_gps -->
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:drawable="@drawable/drawable_gps"
android:width="64dp"
android:height="64dp"
/>
</layer-list >

在 Android Studio 预览中检查时看起来不错,但是当我在 AVD 中启动应用程序时,图像调整大小无法正常工作。

When looking inside Android Studio When looking inside AVD

总结,我尝试在单独的 XML 可绘制文件中使用 android:widthandroid:height 设置图像大小并且它有效在 Android Studio 预览中很好。但是 Android 不遵守我在 XML 可绘制文件中定义的宽度和高度。如何让 Android 遵守我在 XML 中定义的宽度和高度?

我必须使用不同大小的相同图像,因此调整实际图像的大小或使用多个图像似乎不是最好的主意。将东西嵌套在 LinearLayout 中对我来说不是个好主意,但如果我必须实现我想要的东西,那么我将使用该方法。在此之前,我想解决图像无法调整大小的问题。

最佳答案

您可以使用 MaterialButtoniconSize属性。

或者使用VectorDrawable代替png图片,这样你就可以在你的图片中设置widthheight xml 文件,像这样:

<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="40dp"
android:height="40dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#fff"
android:pathData="M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z" />
</vector>

关于android - 即使在 XML 中定义了大小,图像也不会调整大小 (Android Studio),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62951284/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com