Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何创建内部路径透明的可绘制向量?_Android_Shape_Android Vectordrawable - Fatal编程技术网

Android 如何创建内部路径透明的可绘制向量?

Android 如何创建内部路径透明的可绘制向量?,android,shape,android-vectordrawable,Android,Shape,Android Vectordrawable,我正在尝试创建一个最喜欢的图标,比如下面的图标 在创建它时,我需要内部路径(蓝色区域)在结果中是透明的。但在给出透明颜色时,它显示的是外部路径中填充的颜色。即橙色的完整形状。如何使用透明的内部路径绘制向量 我的矢量绘图是 <?xml version="1.0" encoding="utf-8"?> <vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="

我正在尝试创建一个最喜欢的图标,比如下面的图标

在创建它时,我需要内部路径(蓝色区域)在结果中是透明的。但在给出透明颜色时,它显示的是外部路径中填充的颜色。即橙色的完整形状。如何使用透明的内部路径绘制向量

我的矢量绘图是

<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
        android:width="72dp"
        android:height="66dp"
        android:viewportHeight="66"
        android:viewportWidth="72">

    <path
        android:fillColor="@android:color/transparent"
        android:pathData="M 0.00 0.00 L 72.00 0.00 L 72.00 66.00 L 0.00 66.00 L 0.00 0.00 Z" />
    <path
        android:fillColor="#F7592B"
        android:pathData="M 20.99 1.04 C 26.30 1.45 30.97 4.88 36.04 5.70 C 40.02 5.23 43.79 2.79 47.70
        1.80 C 56.08 -0.90 65.46 4.21 69.03 11.97 C 71.67 17.65 71.59 24.74 70.62 30.81
        C 68.57 41.48 60.32 50.55 51.81 56.81 C 47.69 59.73 43.11 62.72 38.21 64.12 C
        34.80 65.13 31.23 63.34 28.24 61.86 C 19.69 57.27 11.77 50.76 6.25 42.72 C 0.82
        34.78 -0.33 24.87 1.66 15.60 C 3.69 7.15 12.14 0.18 20.99 1.04 Z" />
    <path
        android:fillColor="#1721dc"
        android:pathData="M 19.98 7.14 C 25.68 7.39 30.87 12.07 36.10 12.99 C 41.30 12.15 46.97 7.14 52.84
        7.35 C 58.72 7.85 63.41 12.52 64.67 18.17 C 65.71 23.40 65.21 29.32 63.25 34.30
        C 59.83 42.88 52.20 49.81 44.38 54.43 C 40.52 56.53 36.81 58.58 32.37 56.70 C
        24.56 53.51 17.02 47.75 12.20 40.77 C 7.31 33.87 5.58 24.79 7.64 16.59 C 9.15
        11.09 14.21 6.98 19.98 7.14 Z" />
</vector>

你有两条路要走: 1) 创建另一个vector drawable,它将只绘制外线,而不是重叠两颗心 或 2) 移除橙色心形并向蓝色心形添加橙色笔划。只需复制下面的代码并尝试一下。请注意:一半的笔划宽度将进入图像内部,另一半将进入外部,因此您的图像将有所不同(斯托克将更接近图像的中心)



结果:

请像这样使用StrokeColor和strokeWidth

<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="72dp"
android:height="66dp"
android:viewportHeight="66"
android:viewportWidth="72">

<path
    android:fillColor="@android:color/transparent"
    android:pathData="M 0.00 0.00 L 72.00 0.00 L 72.00 66.00 L 0.00 66.00 L 0.00 0.00 Z" />
<path
    android:fillColor="#000000000"
    android:pathData="M 19.98 7.14 C 25.68 7.39 30.87 12.07 36.10 12.99 C 41.30 12.15 46.97 7.14 52.84
    7.35 C 58.72 7.85 63.41 12.52 64.67 18.17 C 65.71 23.40 65.21 29.32 63.25 34.30
    C 59.83 42.88 52.20 49.81 44.38 54.43 C 40.52 56.53 36.81 58.58 32.37 56.70 C
    24.56 53.51 17.02 47.75 12.20 40.77 C 7.31 33.87 5.58 24.79 7.64 16.59 C 9.15
    11.09 14.21 6.98 19.98 7.14 Z"
    android:strokeColor="#F7592B"
    android:strokeWidth="5"/>


不,你不能。。您应该使用illustrator将svg设置为那样,并将其转换为可绘制的矢量…按照您的建议,使用笔划创建我的矢量图像:)
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="72dp"
android:height="66dp"
android:viewportHeight="66"
android:viewportWidth="72">

<path
    android:fillColor="@android:color/transparent"
    android:pathData="M 0.00 0.00 L 72.00 0.00 L 72.00 66.00 L 0.00 66.00 L 0.00 0.00 Z" />
<path
    android:fillColor="#000000000"
    android:pathData="M 19.98 7.14 C 25.68 7.39 30.87 12.07 36.10 12.99 C 41.30 12.15 46.97 7.14 52.84
    7.35 C 58.72 7.85 63.41 12.52 64.67 18.17 C 65.71 23.40 65.21 29.32 63.25 34.30
    C 59.83 42.88 52.20 49.81 44.38 54.43 C 40.52 56.53 36.81 58.58 32.37 56.70 C
    24.56 53.51 17.02 47.75 12.20 40.77 C 7.31 33.87 5.58 24.79 7.64 16.59 C 9.15
    11.09 14.21 6.98 19.98 7.14 Z"
    android:strokeColor="#F7592B"
    android:strokeWidth="5"/>