从右到左检查箭头

时间:2016-07-14 06:11:43

标签: android icons drawable right-to-left android-vectordrawable

我需要向右移动检查箭头,如图中的第二个箭头,用于我在android中的可绘制背景

check arrow image

   I need to rotate left to right check arrow vector icon 
    <vector xmlns:android="http://schemas.android.com/apk/res/android"
          android:width="24dp"
           android:height="24dp"
          android:viewportWidth="24.0"
          android:viewportHeight="24.0"
            >
        <path
        android:fillColor="#FFFFFFFF"
         android:pathData="M9,16.2L4.8,12l-1.4,1.4L9,19 21,7l-     1.4,-1.4L9,16.2z"/>

    </vector>

1 个答案:

答案 0 :(得分:0)

像这样翻转现有VectorDrawable的一种简单方法是使用负数来缩放它。

VectorDrawable的<group>标记是我们可以使用scaleX和scaleY属性的地方。使用这些属性,值为1是完整大小,值为0则缩小为空; 2将是双倍大小,0.5将是一半大小等。

如果我们使用负数,它会一直缩小到零,然后开始朝相反方向增加。因此,在您的示例中,要水平翻转复选标记,我们可以使用:

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportHeight="24.0"
    android:viewportWidth="24.0">
    <group
        android:pivotX="12"
        android:scaleX="-1">
        <path
            android:fillColor="#FFFFFFFF"
            android:pathData="M9,16.2L4.8,12l-1.4,1.4L9,19 21,7l-1.4,-1.4L9,16.2z" />
    </group>
</vector>

我们将路径包装在<group>标记中,并为其赋予scaleX值-1,这意味着正常大小但方向相反。 pivotX值也是12,这是因为视口的整个宽度是24,我们想要围绕中心线翻转图标。

哪个改变了这个:

normal check-mark

进入这个:

flipped check-mark

编辑以添加:

我发现您的问题标有right-to-left,就像从右到左阅读的语言一样。上面的答案可能不是你想要的,所以这里有另一种选择:

如果您希望VectorDrawable在从左到右设备上使用时以原始方式显示,但在从右到左设备上采用相反的方式,那么有一个特定属性可启用此功能:autoMirrored。

通过将autoMirrored设置为true,drawable将以从左到右的模式显示默认方式,但在从右到左模式时将水平翻转(但请注意,这仅在API 19及更高版本上支持):< / p>

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

    <path
        android:fillColor="#000000"
        android:pathData="M9,16.2L4.8,12l-1.4,1.4L9,19 21,7l-1.4,-1.4L9,16.2z" />

</vector>