要让EditView变成所需要的样式需要配置background,引入对应的xml文件
其中xml文件示例为(可依据自己需要更改):
<?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="#0000ff" /> </shape> </item> <item android:left="2dp" android:right="2dp" android:top="2dp"> <!-- 在实际使用中我发现1dp达不到显示效果,而2dp正好可以显示边框 --> <shape android:shape="rectangle" > <solid android:color="#00ff00" /> </shape> </item> </layer-list>
其中部分标签
layer-list层列表,用来创建 LayerDrawable 的,LayerDrawable 是 DrawableResource 的一种, 所以,layer-list 创建出来的是 图层列表,也就是一个drawable 图形。
layer-list 的大致原理类似 RelativeLayout(或者FrameLayout) ,也是一层层的叠加 ,后添加的会覆盖先添加的。在 layer-list 中可以通过 控制后添加图层距离最底部图层的 左上右下的四个边距等属性,得到不同的显示效果。
因 layer-list 创建出来的也是 drawable 资源,所以,同 shape selector 一样,都是定义在 res 中的 drawable 文件夹中,也是一个 xml 文件。使用的时候,同shape selector , 布局文件中使用 @drawable/ xxx 引用, 代码中使用 R.drawable.xxx 引用。
layer-list 中不同的图层使用 item 节点来定义。
原文:https://blog.csdn.net/speverriver/article/details/80925686