全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android 控件设置阴影效果

本文主要记录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元素工具类  # 图层  # 新建一个  # 类似于  # 小编  # 就可以  # 啦啦  # 多个  # 渐变色  # 在此  # 我有  # 给我们  # 是从  # 给大家  # 这几个  # 往上  # 所述  # 给我留言  # 感谢大家  # 到该  # 触碰 


相关文章: 如何在局域网内绑定自建网站域名?  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  建站主机选虚拟主机还是云服务器更好?  存储型VPS适合搭建中小型网站吗?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  宁波免费建站如何选择可靠模板与平台?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  ,制作一个手机app网站要多少钱?  h5网站制作工具有哪些,h5页面制作工具有哪些?  深圳网站制作平台,深圳市做网站好的公司有哪些?  手机网站制作与建设方案,手机网站如何建设?  定制建站是什么?如何实现个性化需求?  定制建站平台哪家好?企业官网搭建与快速建站方案推荐  如何快速搭建高效服务器建站系统?  测试制作网站有哪些,测试性取向的权威测试或者网站?  建站之星安装提示数据库无法连接如何解决?  建站之星安装需要哪些步骤及注意事项?  为什么Go需要go mod文件_Go go mod文件作用说明  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  ui设计制作网站有哪些,手机UI设计网址吗?  如何通过虚拟主机空间快速建站?  香港服务器如何优化才能显著提升网站加载速度?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  定制建站价位费用解析与套餐推荐全攻略  三星网站视频制作教程下载,三星w23网页如何全屏?  C++如何使用std::optional?(处理可选值)  如何快速生成可下载的建站源码工具?  如何快速生成凡客建站的专业级图册?  如何在阿里云虚拟服务器快速搭建网站?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  高端建站三要素:定制模板、企业官网与响应式设计优化  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  如何选择CMS系统实现快速建站与SEO优化?  威客平台建站流程解析:高效搭建教程与设计优化方案  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  常州企业建站如何选择最佳模板?  建站org新手必看:2024最新搭建流程与模板选择技巧  一键网站制作软件,义乌购一件代发流程?  建站之星安装模板失败:服务器环境不兼容?  css网站制作参考文献有哪些,易聊怎么注册?  如何在阿里云购买域名并搭建网站?  如何使用Golang安装API文档生成工具_快速生成接口文档  如何解决VPS建站LNMP环境配置常见问题?  详解jQuery停止动画——stop()方法的使用  建站之星如何快速解决建站难题?  ,网页ppt怎么弄成自己的ppt? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。