java - 如何为 android 创建 vector 可绘制对象?

标签 java android android-studio svg android-vectordrawable

我是 VectorDrawables 的新手。

我可以看到,android studio 提供的默认 vector drawables,如 ic_menu_galleryic_menu_camera 等,效果很好。所以我尝试通过首先将我的 png images 转换为 svg 并使用路径和填充值来制作 vector 可绘制对象来创建自己的 vector drawablesandroid:pathData 替换为 d 和 android:fillColor 替换 svg 文件中的填充标记。它以某种方式提供了 vector 可绘制对象,但外观扭曲或弯曲。

如果我没有采取正确的方法,请建议我。

最佳答案

您可以使用 Android Studio。 png转svg文件在线工具PNG to SVG
File - > New -> Vector Asset

You can choose Material Icon or Local SVG file

对于 SVG 颜色可以使用:

  <ImageButton
    android:layout_width="48dp"
    android:layout_height="48dp"
    android:id="@+id/button"
    android:src="@drawable/ic_more_vert_24dp"
    android:tint="@color/primary" />

或者

imageView.setColorFilter(getResources().getColor(android.R.color.black), PorterDuff.Mode.SRC_IN);

可以将SVG转换为PNG的在线工具: coolutils

将 SVG 转换为 Android 可绘制对象: inloop

关于java - 如何为 android 创建 vector 可绘制对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35401968/

相关文章:

Android增强现实工具?

java - Skobbler map 。注释显示为黑色方 block 。安卓

android - ListView 项目回收

即使没有任何更改,Android 多模块 Gradle 构建也很慢

java - Android Studio 报告 "android sdk is parsed incorrectly"

java resultset.getstring ("col_name") 查询

java - 如何通过 java 代码从 kubernetes 集群模式下的 Spark 应用程序获取正确的退出代码

java - 为什么Java需要变量初始化?

android - Android Studio的.idea/libraries中 "Gradle_"开头的文件是怎么生成的?

java - 如何对 Spring bean 隐藏方法?