Android 控件设置阴影效果
发布时间 - 2026-01-11 03:21:37 点击率:次本文主要记录Android控件设置阴影

- 给控件设置阴影,会使得界面元素更好看一写,google 给我们提供了一个现成的控CardView,可以将CardView看做是FrameLayout在自身之上添加了圆角和阴影效果
- 本文是使用给控件设置背景实现阴影
- 在res/drawable 下新建一个 Drawable Resource File
- 使用 layer-list 图层 就是说可以多个图层一层一层盖上去
- 新建一个渐变的图层 item作为背景图层,主要是 gradient,shape是用来定义形状的,corners设置角度,gradient定义该形状里面为渐变色填充,startColor起始颜色,endColor结束颜色,angle表示方向角度。当angle=0时,渐变色是从左向右。 然后逆时针方向转,当angle=90时为从下往上
<item > <shape android:shape="rectangle" > <gradient android:angle="90" android:endColor="#dad9d9" android:startColor="#03a430" /> <corners android:radius="10dp" /> </shape> </item>
新建一个图层,作为顶层图层, 阴影实现的原理,就是顶层的小显示一点,露出一部分下面的图层,这个就需要设置Item的 left, top, right, bottom属性,这几个参数的设置就类似于设置margin, 这样就可以出来阴影效果了,当然为了效果,我的参数设置的有点夸张,只设置了右边和下边的阴影,solid 设置填充, 还有stroke 设置边框,设置了颜色,设置了宽度就可以看见边框效果了
<item > <shape android:shape="rectangle" > <gradient android:angle="90" android:endColor="#dad9d9" android:startColor="#03a430" /> <corners android:radius="10dp" /> </shape> </item> <item android:right="20dp" android:bottom="40dp"> <shape android:shape="rectangle" > <solid android:color="#FFFFFF"/> <corners android:radius="10dp" /> </shape> </item>
顶层的图层上,还是可以添加触摸的变化效果,即手指触碰到该控件时,控件背景色变化
<item android:right="2dp" android:bottom="6dp"> <selector> <item android:state_focused="false" android:state_pressed="true" > <shape android:shape="rectangle" > <solid android:color="@color/E5"/> <corners android:radius="10dp" /> </shape> </item> <item> <shape android:shape="rectangle" > <solid android:color="@color/white"/> <corners android:radius="10dp" /> </shape> </item> </selector> </item>
使用:android:background=”@drawable/你的阴影xml文件”
<LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:background="@drawable/vcam_entry_border" android:gravity="center" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingRight="@dimen/common_measure_10dp" android:textColor="@color/black_100" android:text="啦啦啦啦,我有阴影"/> </LinearLayout>
附 : 完整的阴影xml 代码
<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <!-- 阴影部分 最下面一层 --> <item > <shape android:shape="rectangle" > <gradient android:angle="90" android:endColor="#777777" android:startColor="#C5C5C5" /> <corners android:radius="10dp" /> </shape> </item> <!-- 背景部分 --> <!-- 形象的表达:bottom left ... 类似于设置 margin --> <item android:right="2dp" android:bottom="6dp"> <selector> <item android:state_focused="false" android:state_pressed="true" > <shape android:shape="rectangle" > <solid android:color="@color/E5"/> <corners android:radius="10dp" /> </shape> </item> <item> <shape android:shape="rectangle" > <solid android:color="@color/white"/> <corners android:radius="10dp" /> </shape> </item> </selector> </item> </layer-list>
总结
以上所述是小编给大家介绍的Android 控件设置阴影效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# android
# 控件设置阴影
# Android自定义View之自定义评价打分控件RatingBar实现自定义星星大小和间距
# Android中让图片自适应控件的大小的方法
# android 设置控件的颜色字体的方法
# Android动态添加设置布局与控件的方法
# Android中ImageView.src设置图片拉伸、填满控件的方法
# Android设置控件阴影的三种方法
# android 添加随意拖动的桌面悬浮窗口
# Android弹出窗口实现方法
# Android自定义弹出窗口PopupWindow使用技巧
# Android编程处理窗口控件大小
# 形状
# 像素等UI元素工具类
# 图层
# 新建一个
# 类似于
# 小编
# 就可以
# 啦啦
# 多个
# 渐变色
# 在此
# 我有
# 给我们
# 是从
# 给大家
# 这几个
# 往上
# 所述
# 给我留言
# 感谢大家
# 到该
# 触碰
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251811 】
【
AI营销90571 】
相关推荐:
如何在不使用负向后查找的情况下匹配特定条件前的换行符
iOS中将个别页面强制横屏其他页面竖屏
Laravel如何为API生成Swagger或OpenAPI文档
在centOS 7安装mysql 5.7的详细教程
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
nodejs redis 发布订阅机制封装实现方法及实例代码
PHP 500报错的快速解决方法
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
微信小程序 闭包写法详细介绍
宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
微信h5制作网站有哪些,免费微信H5页面制作工具?
智能起名网站制作软件有哪些,制作logo的软件?
青岛网站建设如何选择本地服务器?
中山网站制作网页,中山新生登记系统登记流程?
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】
成都网站制作公司哪家好,四川省职工服务网是做什么用?
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?
南京网站制作费用,南京远驱官方网站?
如何快速生成凡客建站的专业级图册?
瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口
EditPlus中的正则表达式实战(5)
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
javascript中闭包概念与用法深入理解
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
php485函数参数是什么意思_php485各参数详细说明【介绍】
如何登录建站主机?访问步骤全解析
Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框
Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优
大同网页,大同瑞慈医院官网?
佛山网站制作系统,佛山企业变更地址网上办理步骤?
Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】
详解Huffman编码算法之Java实现
如何为不同团队 ID 动态生成多个独立按钮
桂林网站制作公司有哪些,桂林马拉松怎么报名?
微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】
高防服务器租用首荐平台,企业级优惠套餐快速部署
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
Laravel如何使用Blade模板引擎?(完整语法和示例)
Laravel如何处理CORS跨域请求?(配置示例)
Laravel如何使用模型观察者?(Observer代码示例)
北京专业网站制作设计师招聘,北京白云观官方网站?
html如何与html链接_实现多个HTML页面互相链接【互相】
上一篇:linux怎么开放端口
上一篇:linux怎么开放端口

