如何在可绘制的xml中创建垂直线? Android的

时间:2015-12-08 05:57:57

标签: android line android-drawable

有没有办法制作绘制垂直线的drawable?到目前为止,我有一条横线表示:

enter image description here

目前的代码如下:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/object_switcher_background" />
    <item android:left="0dp"
          android:right="250dp">
        <shape android:shape="line">

            <stroke android:color="@color/c19"
                android:width="2dp"/>
            <size android:width="40dp"/>
        </shape>

    </item>
    <item android:left="50dp"
          android:bottom="50dp"
          android:top="75dp"
          android:right="150dp">
          <shape android:shape="line">

              <stroke android:color="@color/c19"
                  android:width="2dp"
                  android:rotation="90"/>
              <size android:width="40dp"/>
          </shape>

    </item>
</layer-list>

我如何操纵它使它看起来像这样?

enter image description here

3 个答案:

答案 0 :(得分:2)

您可以将第二个项目嵌套在rotate项目中。

答案 1 :(得分:1)

你可以使用旋转项目来做到这一点:下面的代码定义了一个带有垂直分隔符的白色背景,仅使用xml drawable

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@android:color/white" />
        </shape>
    </item>
    <item>
        <rotate android:fromDegrees="90">
            <shape android:shape="line">
                <stroke
                    android:width="1dp"
                    android:color="@android:color/darker_gray" />
            </shape>
        </rotate>
    </item>

答案 2 :(得分:-1)

我不确定为什么你需要一个可绘制的。

这也可以通过使用简单的视图并根据您的需要调整其高度,宽度和位置来完成。例如:

 <View
      android:layout_width="1dp"
      android:background="@color/grey_text_color"
      android:layout_height="match_parent"/>