递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 3876|回复: 0
打印 上一主题 下一主题

[安卓] 【分享】控件设置边框的方法

[复制链接]

44

主题

233

帖子

914

积分

高级会员

Rank: 4

积分
914
跳转到指定楼层
楼主
发表于 2022-5-6 16:15:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
前段时间提了个问题,就是问如何实现如下图中的**线布局方法的。

论坛上有位非常热心的兄弟,给我做了个通过使用分隔线组件来实现的案例。这两天我从网上搜索时,发现还可以通过设置对应控件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)时颜色为白色。









回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-24 23:54 , Processed in 0.073151 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表