java 给控件添加边框_Android UI 利用Drawable Shape给控件加边框/立体效果
在软开中,经常需要对原生的控件UI进行修改,最近项目由于UI没到位,所有有些带边框的有立体效果的UI要自己实现,实现方法是用XML写Shape。
ListView Items加边框构成立体效果:
通过图像工具放大镜的帮助,其实可以发现一个Item背景其实是5个矩形组成:
所以我们可以通过5个矩形shape的top和bottom的挤压画出我们上图的效果:list_item_border.xml
最后把Item的背景设置成这个就可以了:
android:background="@drawable/list_item_border"
项目中还遇到过一个情况,就要多个TextView: EditText对的下方用一条线分隔开,效果如下:
同样用放大镜可以看到分割线其实是4个矩形(或者是4条线),但是不能和上面一样写,不然会被最后一个矩形把图像颜色都占满(这个问题我纠结很久)。应该和画线条一下写矩形:
就是给它们定好高度,然后一条条向下压。
补充下,圆角和可见边框的实现:其实很简单,分别采用Shape的 和 实现
圆角关键在于android:radius属性,这个是半径,数字越大,圆角越圆。
可见边框设置宽度就可以了,还有一个就是dash虚线的属性。这样实现边框都是全部的(矩形就是四边),如果想实现单边,那么你就只能用本文最开始的那个方法用两个(多个)矩形拼出只有一个边框的矩形。
java 给控件添加边框_Android UI 利用Drawable Shape给控件加边框/立体效果相关推荐
- 去掉边框_安卓也有堪比 VOUN 的加边框应用了,素材丰富到没朋友
iOS 系统中有一款可以给照片加边框的应用 VOUN,里面的相框档次很高,调整后的效果也很不错,但是安卓却没有一款类似的应用.开发者 Joey 尝试找了很多款相似的应用,结果不是广告就是骗流量的辣鸡应 ...
- java安卓播放器添加选集_Android使用vitamio插件实现视频播放器
使用第三方的vitamio插件实现简易的播放器.vitamio版本(5.2.3) 官网地址:官网地址 效果展示 效果 项目结构 代码: MainActivity package com.example ...
- android给图片加边框,Android学习笔记进阶19之给图片加边框
//设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width ...
- android listview添加数据_Android系统列表控件
在android系统控件中,有多个控件可以展示列表数据. 一.ListView 该组件是android中最常用的一个UI组件,用于实现在屏幕上显示多个内容,以便于我们用手指进行滑动. ListView ...
- Element UI-给树形控件添加图标
Element UI-给树形控件添加图标 element ui 提供的树形控件默认是不支持添加图标的,如下所示: 如果要想要在节点自定义树形控件的图标,可以使用slot-scope,代码如下: 其代码 ...
- 给表单控件添加超链接
在HTML中给表单控件添加超链接 众所周知,常见的表单控件类型有text.password.button.submit.checkbox(复选框).radio(单选框).经常在做登录界面注册时会有一个 ...
- Android中给LineayLayout加边框
给Android的LinearLayout加边框分为两种方式,给LinearLayout整体加边框和给某一个边加边框 第一种:给整体加边框 在drawable文件夹中新建shape资源文件,将下列代码 ...
- Eclipse Android项目 为控件添加了Id,但是在Java代码中提示xxx cannot be resolved or is not a field
在Android开发过程中,常需要在布局文件中为控件添加Id,以便在Java代码中找到这个控件. 但在使用Eclipse进行开发的过程中,常会出现明明已经在Layout XML文件中为组件添加了Id, ...
- Android 开发 -- 开发第一个安卓程序、Android UI开发(布局的创建:相对布局和线性布局、控件单位:px pt dp sp、常用控件 、常见对话框、ListView)
文章目录 1. 开发第一个Hello World程序 1.1 开发程序 1.2 认识程序中的文件 1.3 Android程序结构 1.4 安卓程序打包 2. Android UI开发 2.1 布局的创 ...
最新文章
- Java NIO系列教程(六) Selector
- flask + 蓝图 用 sqlalchemy 对 mysql 进行 增删查改 的 demo
- [js] Geolocation.getCurrentPosition()用来做什么的?在什么浏览器不受兼容?
- oracle sql server的区别,oracle与sqlserver的十大区别
- oracle linux内存推荐分配,[20191114]linux内存分配的讨论.txt
- 大文件表空间+创建大文件表空间+查询数据库表空间类型信息+查询数据库表空间类型信息...
- JavaNIO - Scatter Gather
- python中a=str(int(a))什么意思_python中a+=a和a=a+a的区别
- 组合体计算机绘图的实验原理,《机械制图及计算机绘图》实验教案.pdf
- 【有限元分析】提高有限元分析计算精度的h方法和p方法
- mysql PTA题解查询平均成绩最高的前三名同学
- 氨基酸在php的溶液中,氨基酸等电点的计算和应用.ppt
- vue 解决跨域时报错 Cannot read property ‘split‘ of null
- 《计算机通信与网络》学习笔记
- 中山大学软件工程c语言,2017年中山大学085212软件工程考研参考书目推荐
- oppo计算机怎么添加到桌面,OPPO怎么把快捷方式添加到桌面 OPPO把快捷方式添加到桌面方法...
- PyTorch学习笔记(20) ——激活函数
- java 处理物料清单_JAVA Spring MVC 物料清单BOM 展开实例
- oa系统服务器租赁,oa服务器租赁
- 蓝牙透传实验_蓝牙模块比较常见的通讯方式透传是什么
热门文章
- pandas基于日期信息(time or date)生成季度信息(quarter)实战:pandas基于日期信息列生成季度信息列、dt.quarter生成季度信息、dt.to_period生成季度信息
- R语言dataframe获取每个字段(特征)的数据类型实战:使用sapply函数获取每个字段(特征)的数据类型、通过柱状图可视化特征的种类以及个数
- Pandas把dataframe中的整数数值(integer)转化为时间(日期、时间)信息实战
- R单变量可视化(Histograms、 Index Plots、Time-Series Plots、Pie Charts)
- 文本处理三驾马车 • grep • sed • awk
- linux-多任务同步和互斥
- tf.keras.activations.sigmoid 激活函数 示例
- 目标检测--Object Detection via Aspect Ratio and Context Aware
- 解决Linux最大进程数和最大文件句柄问题
- ClickHouse系列教程