Android - 使用 xml drawable 制作检查图标
Posted
技术标签:
【中文标题】Android - 使用 xml drawable 制作检查图标【英文标题】:Android - Make check icon using xml drawable 【发布时间】:2017-01-16 04:18:31 【问题描述】:如何使用 xml drawable 制作这个形状?为这件事争吵了很长时间,但无法完成。
【问题讨论】:
你有考虑过使用 9patch 的图像吗?或者你为什么需要这个形状? 您还可以将图像转换为矢量绘图 你不能简单地用 drawable.xml 创建复选标记,使用图像或者编写你自己的逻辑。 我需要全屏显示,所以我认为我不会使用会增加我的 apk 大小的大图像 【参考方案1】:这是您可以改进的模板:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:
android:
android:top="20dp">
<rotate
android:fromDegrees="45">
<shape android:shape="rectangle">
<solid android:color="@android:color/holo_orange_dark"/>
</shape>
</rotate>
</item>
<item
android:
android:
android:top="15dp"
android:left="18dp">
<rotate
android:fromDegrees="-45">
<shape android:shape="rectangle">
<solid android:color="@android:color/holo_orange_dark"/>
</shape>
</rotate>
</item>
<item
android:
android:>
<shape android:shape="rectangle">
<solid android:color="@android:color/transparent"/>
</shape>
</item>
</layer-list>
【讨论】:
这是一个很好的答案,但我收到了这个警告属性高度仅用于 API 级别 23 及更高级别(当前最小值为 16)。小于 23 的 API 应该使用哪些属性。【参考方案2】:2020 年解决方案:
对于现在正在寻找这个答案的任何人,您可以在材料网站上下载图标(https://material.io/resources/icons/?style=baseline)
对于 android,您甚至可以使用以下方法直接从 Android Studio 添加图标:
1 -> 左侧的“资源管理器” 2 -> 按“+”图标 3 -> 选择“矢量资源” 4 -> 那么你只需要选择正确的图标或者你可以:
1 -> 右键单击 res/drawable 文件夹 2 -> 选择新建 > 矢量资产【讨论】:
这是最好的解决方案!使用 AS 为您提供的内容。【参考方案3】:<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:
android:
android:top="20dp">
<rotate
android:fromDegrees="45">
<shape android:shape="rectangle">
<solid android:color="@android:color/holo_orange_dark"/>
</shape>
</rotate>
</item>
<item
android:
android:
android:top="15dp"
android:left="13dp">
<rotate
android:fromDegrees="-45">
<shape
android:shape="rectangle">
<solid android:color="@android:color/holo_orange_dark">
</solid>
</shape>
</rotate>
</item>
<item
android:
android:>
<shape android:shape="rectangle">
<solid android:color="@android:color/transparent"/>
</shape>
</item>
【讨论】:
【参考方案4】:<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:
android:
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="#008F28"
android:alpha="0.9">
<path
android:fillColor="#FF000000"
android:pathData="M9,16.2L4.8,12l-1.4,1.4L9,19 21,7l-1.4,-1.4L9,16.2z"/>
</vector>
【讨论】:
以上是关于Android - 使用 xml drawable 制作检查图标的主要内容,如果未能解决你的问题,请参考以下文章
Android:如何使用 XML drawable 创建精确的材料设计阴影
如何在android中使用xml drawable创建半圆形填充形状?