Android:当设置为背景时,如何使用 layer-list 和 shape 元素绘制水平线?

标签 android shapes

我想将 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>

最佳答案

在我问完之前找到了答案。

<?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>

关于Android:当设置为背景时,如何使用 layer-list 和 shape 元素绘制水平线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4146795/

相关文章:

java - 绘制动态形状

java - 如何在 fragment 中使用 GetJsonFromUrlTask​​.java

android - 如何以最短时间查询数据库中的 3 个表

android - kotlin中的vararg没用吗?

java - Android - 具有形状可绘制对象和以编程方式渐变的自定义按钮

algorithm - 处理板上形状的选择

optimization - 缩小脏矩形

Java 改变 JPanel 的形状

android - 更新版本 :gradle to 3. 3.0 时,Crashlytics 找不到 list

Android - Viewpager 自定义