递归火山软件开发平台

标题: 【分享】控件设置边框的方法 [打印本页]

作者: blackangeldsf    时间: 2022-5-6 16:15
标题: 【分享】控件设置边框的方法
前段时间提了个问题,就是问如何实现如下图中的**线布局方法的。
(, 下载次数: 47)
论坛上有位非常热心的兄弟,给我做了个通过使用分隔线组件来实现的案例。这两天我从网上搜索时,发现还可以通过设置对应控件xml背景图来实现。下面我就和大家分享下,或许对不熟悉安卓开发的兄弟有用。

实现方法1,通过xml文件中的shape元素。shape元素有stroke属性,这个属性只可以显示控件的四个边框。xml文件内容如下:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">
  3.     <stroke
  4.         android:color="#FF0088FF"
  5.         android:width="2dp"        />
  6. </shape>
复制代码






实现方法2,通过xml文件中的layer-list元素来实现。layer-list中有item子元素,每个子元素从下向上依次沿Z轴(不是X或Y轴)显示。通过控制上层item的大小来模拟边框。此方法,可控制四个边框的显示与否。xml文件内容如下:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  3.     <!--底层使用**填充,为将要显示为边框颜色-->
  4.     <item>
  5.         <shape>
  6.             <!-- <solid android:color="#FFA6A6A6"/> -->
  7.                         <solid android:color="#FFA6A6A6"/>
  8.         </shape>
  9.     </item>

  10.     <!--上面一层距离底层的顶部1dp,距离底部1dp,类似marginTop,填充色为APP背景色,这样就形成了一个带有顶部边线和底部边线的背景图-->
  11.     <item android:bottom="1dp"
  12.           android:top="1dp">
  13.         <shape>
  14.             <solid android:color="#FFF6F6F6"/>
  15.         </shape>
  16.     </item>
  17. </layer-list>
复制代码

好啦,完成了。顺带说一句安卓的颜色代码含义,供参考。

Android中的颜色值通常遵循RGB/ARGB标准,使用时通常以“ # ”字符开头的8位16进制表示。其中ARGB 依次代表透明度(Alpha)、红色(Red)、绿色(Green)、蓝色(Blue),取值范围为0 ~ 255(即16进制的0x00 ~0xff)。
A 从0x00到0xff表示从透明到不透明,RGB 从0x00到0xff表示颜色从浅到深。当RGB全取最小值(0或0x000000)时颜色为黑色,全取最大值(255或0xffffff)时颜色为白色。














欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4