如何通过图层列表绘制

How to make drawable by layer-list

我想自定义编辑文字如下图

目前,我正在使用带有 width = 1dp 的视图来欺骗这种情况。
实际上这是一种肮脏的方法,所以我想通过图层列表制作一个可绘制文件,然后添加到 EditText 的背景中。它看起来像:

______________ 

______________ 

另一方面,作为 Android 编辑文本属性,我们可以使用 drawableTopdrawableBottom 添加一个分隔符(只是一个 shape line )。

我的问题:
方法 1 -> 我无法创建顶部和底部为一条线的背景
方法 2 -> 我尝试使用 drawableTop 但它没有显示

试试这个

    <?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="#a8a8a8" />
        </shape>
      </item>
      <item android:top="2dp" android:bottom="2dp">
        <shape android:shape="rectangle">
         <solid android:color="#ffffff" />
        </shape>
      </item>
    </layer-list>