Android 13 主题图标被切断/不适合框架

标签 android icons android-vectordrawable android-icons android-13

我正在尝试实现新的主题图标,但我遇到的问题是我的图标总是放大 2 倍,我无法让它适应 Canvas 。

下面你可以看到左边是普通图标,右边是主题图标。

comparison

ic_launcher

<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
    <background android:drawable="@mipmap/ic_launcher_background"/>
    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
    <monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
</adaptive-icon>

ic_launcher_monochrome

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportWidth="24"
    android:viewportHeight="24">

        <!-- PATH DATA -->

</vector>

为什么主题版本放大了,我该如何解决?

最佳答案

找到了一个解决方案,只需将您的路径数据放入一个组中,然后像这样缩小它:

<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">

    <group
        android:pivotX="12"
        android:pivotY="12"
        android:scaleX="0.6"
        android:scaleY="0.6">

        <!-- PATH DATA -->

    </group>

</vector>

关于Android 13 主题图标被切断/不适合框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72077787/

相关文章:

java - 在 RecyclerView 中设置 CardView 的背景图片会导致程序在滚动时崩溃

android - 全屏困惑的蜂窝上下文菜单

java - inflater.inflate(R.layout.) 找不到 Fragment.xml

android - 在 CountdownTimer 上获取剩余时间并将剩余时间用作分数 android

java - Java 在图像和显示方面是否存在任何已知问题

css - 编程语言的图标字体

Android.view.InflateException : Binary XML file line #25: Error inflating class ImageButton, 资源 NotFoundException,XmlPullParserException

android - AppCompatDrawableManager.get() 与 VectorDrawableCompat.create()

android - google places api 图标列表

android - 自定义 View 上的可绘制标签向量无效