Android: Как я могу использовать список слоев и элементы формы, чтобы нарисовать горизонтальное правило, когда оно установлено в качестве фона? - PullRequest
35 голосов
/ 10 ноября 2010

Я хочу установить фон Relative или LinearLayout для пользовательского рисования.Я хочу, чтобы фигура нарисовала две горизонтальные линии поперек нижней части, оставляя центральную часть прозрачной (пустой).

Ниже показано, как горизонтальные линии отцентрированы вертикально по центру, где мне нужно, чтобы они были выровнены по нижней частиформа.(Если вы добавите прямоугольник как элемент, вы увидите, что форма расширяется до размеров родителя, но линии по-прежнему выровнены по центру).

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
 <item>
  <shape android:shape="line">
      <stroke android:width="1dip" android:color="#99b8b9bd" />
      <size android:height="1dip" />
  </shape>
 </item>
 <item>
  <shape android:shape="line" android:top="1dip">
      <stroke android:width="1dip" android:color="#FFFFFFFF" />
      <size android:height="1dip" />
  </shape>
 </item>
</layer-list>

Ответы [ 2 ]

58 голосов
/ 10 ноября 2010

Нашел ответ, прежде чем я закончил спрашивать об этом.

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item>
      <shape 
        android:shape="rectangle">
            <stroke android:width="1dp" android:color="@color/hr_bottom" />
            <solid android:color="#00FF0000" />
            <padding android:bottom="1dp"/>
        </shape>
   </item>

   <item>
      <shape 
        android:shape="rectangle">
            <stroke android:width="1dp" android:color="@color/hr_top" />
            <solid android:color="#00FF0000" />
            <padding android:bottom="1dp"/>
        </shape>
   </item>

    <item>
      <shape 
        android:shape="rectangle">
            <stroke android:width="1dp" android:color="#00000000" />
            <solid android:color="#00000000" />
        </shape>
   </item>

</layer-list>
3 голосов
/ 14 июля 2017

Вы также можете нарисовать с помощью простого кода ниже.

<item
    android:right="-2dp"
    android:bottom="-2dp"
    >
    <shape
        android:shape="rectangle">

        <stroke
            android:width="0.5dp"
            android:color="#ff0000"
            android:dashGap="4dp"
            android:dashWidth="4dp" />

    </shape>
</item>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...