Android中如何让控件只显示某一边框

在实际的开发中不免遇到某些控件只要显示某一方向的边框,比如说recyclerView中的每个item,如果你没有对每个item的底部做处理,那么recyclerView所有的item都是连在一起的,没有像ListView那样item与item之间会有一个灰色的线进行分割,所以在此就贴出只显示某一个边框的代码,亲测有效。在drawable目录下新建一个layer-list文件

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>         //边框的颜色
            <solid android:color="#ff9696" />  
        </shape>
    </item>
    
    <item
        android:bottom="1dp">  //这里有四个方向可以选择,这里因为只要显示底部边框,所以就设置bottom
        <shape>
            <solid android:color="#fff" />  //整个空间的背景颜色
        </shape>
    </item>

</layer-list>

实现原理:layer-list中的两个item的相互覆盖,第一个item设置了颜色作为底下的一层,然后第二个item设置了颜色之后就直接贴在第一个item的上面,然后设置bottom让底部空出1dp的距离,所以底部第一个item的颜色得以显示出来,控件的其余都是第二个item的颜色

猜你喜欢

转载自blog.csdn.net/binge__/article/details/54021067