如何在Android中动态设置颜色透明?10%20%到100%

Android布局分析工具HierarchyView

Android使用include/merge/ViewStub优化布局

List的item布局、Dialog的自定义布局的宽高设置是无效的,要用minXXX来指定宽高。

1.  画UI的原则

能简则简,能用一个控件搞定的事情,不要用多个控件。

能抽则抽,可以抽取复用的属性或布局就抽取.

style:抽属性      include:抽布局(如果想让include布局指定位置,就得给include套一个布局)

Android主题切换方案总结

2.  资源

在android项目里,资源放在res文件夹下,资源可以是图片、xml等,不同类型的资源放在不同

的文件下,如下图所示

很多人都不知道的东西:values下的dimens.xml,strings.xml,styles.xml,attr.xml文件,其实

名字可以自己定义,而且完全可以写在一个xml文件里,可以发现每个xml的根标签都是resources,只是

为了便于管理和阅读,分成不同的xml文件。

在XML中引用资源

@[android:]anim/

@[android:]drawable/

@[android:]layout/

@[android:]menu/

@[android:]layout/

@[android:]menu/

@[android:]style/

@[android:]string/

@[android:]color/

如果加上android:表示调用系统的资源,系统本身就带了一些十分常用的、丰富的资源(包括图片

布局、动画等),对于一些demo演示,可以直接调用系统的资源以节省时间。

在代码中引用资源

Drawable drawable = getResources().getDrawable(R.drawable.ic_launcher);

InputStream in = getAssets().open("11.txt");

2-1  自定义图形资源(发挥想象)

⑴shape标签:利用这个标签可以绘制基本的图形,如矩形、圆形、环形、直线

      案例1:横幅广告切换圆点

android:shape="oval"

>

效果如右图所示  

案例2:自定义环形滚动条

android:innerRadiusRatio="3"  //内半径比

android:shape="ring"

android:thickne***atio="10"

android:useLevel="false" >

android:centerColor="#E04343"

android:endColor="#33FEDCC4"

android:startColor="#33F0F0F0"

android:type="sweep" />

效果如右图所示

几个参数需要理解一下:

◆ innerRadiusRatio :内半径比   =  圆的内半径 / 控件的宽度,一般取3.

◆ thickne***atio :厚度比   =  圆的厚度 / 控件的宽度

案例3:圆角矩形

经常用来作为背景使用<?xml  version="1.0" encoding="utf-8"?>

android:shape="rectangle"

>

3.  状态选择器selector

作用:管理资源(图片、颜色),根据控件所处的状态显示资源。

应用场景:如在textview点击的时候,变换颜色或背景,可以让用户知道有没有点击上。

定义步骤:

1)在res/drawable目录下创建xml文件,选择selector标签。

点击finish,会自动生成如下xml文件:

2)定义item标签,表示不同状态下选择器指向的资源。

■item既可以指向drawable资源,也可以指向color资源(不能直接写颜色值,要定义在

color标签里,transparent除外)。

■item的状态有很多,有的是短暂的、临时的状态(如pressed等),有的是永久的状态

(如enabled、selected等)。

■一个xml文件里可以有多个item,但是默认的item(没有指明状态的)一定要放到最后

(千万记住了)

■xml中各个item的资源可以保持一致,要么都是drawable,要么都是color,也可以即是

drawable又是color,只要绑定这个选择器的属性同时支持图片和颜色,如background。

示例1:指向color资源的选择器

示例2:指向drawable资源的选择器

4. 自定义进度条样式

还是使用系统自带的水平进度条样式

style="@android:style/Widget.ProgressBar.Horizontal"

但是在它的基础上要修改一下它的样式

其实,举一反三,系统任何的组件,都可以自定义它的样式。

Inflate:

1)inflate的parent不为null,view会自动添加到parent中。

final ViewGroup newView = (ViewGroup) LayoutInflater.from(this).inflate(

R.layout.list_item_example, mContainerView, false);

android布局的作用,Android UI布局经验总结相关推荐

  1. duilib各种布局的作用,相对布局与绝对布局的的意义与用法

    duilib各种布局的作用,相对布局与绝对布局的的意义与用法 原文  http://blog.csdn.net/zhuhongshu/article/details/38531447 主题 Duili ...

  2. ui布局设计元素:ui布局设计元素有哪些?

    ui布局设计元素:ui布局设计元素有哪些?这一直是我比较喜欢研究的话题,今天正好朋友正好问起.所以就在这里来把自己在行业里的总结写下来,给大家参考一下.说实话,做ui设计师以来,一直有很多朋友问我相关 ...

  3. Android 开发(02)UI布局方式

    一.View 和 ViewGroup 1.View View:所有可视化控件的父类,提供组件描绘和事件处理方法 常用的属性:id.background.padding等 2.ViewGroup Vie ...

  4. android 实现论坛界面,android界面开发之主流UI布局范例

    这篇文章主要说的是android中的UI设定.先看真题效果图,说明.本程序参考新浪微博,图片为猫扑图片. 程序只有最基本的模版,没有任何内容. 点击效果图 这布局为顶部+中间内容+底部模式,现在很多布 ...

  5. Android P SystemUI之StatusBar UI布局status_bar.xml解析

    相关源码: \frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\CollapsedStatusBar ...

  6. android五大布局的作用,Android五大布局与实际应用详解

    Android总体有五大布局: 线性布局(LiearLayout): 屏幕垂直或水平方向布局. 帧布局(FrameLayout):控件从屏幕左上角开始布局. 相对布局(RelativeLayout): ...

  7. android minheight的作用,Android 自定义 View 最少必要知识

    1. 什么是自定义 View? 1.1 定义 在 Android 系统中,界面中所有能看到的元素都是 View.默认情况下,Android 系统为开发者提供了很多 View,比如用于展示文本信息的 T ...

  8. Android适配器以及作用,Android RecyclerView 通用适配器的实现

    分析 我们需要在RecyclerViewAdapter内部维持一个数据集合的引用 需要实现Item的点击事件,包括短按和长按,并需要向外部提供设置监听器的方法 这个适配器必须通用,所以应该是泛型的,并 ...

  9. android merge的作用,Android学习手记-merge

    为什么用merge:标签的作用是合并UI布局,使用该标签能降低UI布局的嵌套层次.该标签的主要使用场景主要包括两个,第一是当xml文件的根布局是 FrameLayout时,可以用merge作为根节点. ...

最新文章

  1. linux多开终端,如何使用Tmux终端多开工具
  2. 拜托,别再问我什么是堆了!
  3. 是时候扔掉 Postman 了,Apifox 真香!
  4. 搭载麒麟990 5G SoC 华为MatePad Pro 5G全球首发
  5. 社区实施 GPL 的原则介绍
  6. 使用 kubeadm快速部署Kubernetes-v1.18
  7. Wherehows项目部署文档
  8. SCI/SCIE/SSCI/期刊简介及官方查询验证方法
  9. TC27x启动过程(2)-TC277
  10. 陶哲轩实分析 习题6.3.3
  11. 泰拉瑞亚正版大型服务器,泰拉瑞亚1.3.5.3物品大全-泰拉瑞亚1.3.5.3服务器版v1.3.5.3 安卓版-腾牛安卓网...
  12. kali虚拟机VMBox安装
  13. 【文献翻译】Select-Storage: A New Oracle Design Pattern on Blockchain
  14. 专升本英语——语法知识——高频语法——第六节 名词性从句(主语从句-表语从句-同位语从句-宾语从句)【学习笔记】
  15. Hadamard矩阵和Kronecker积
  16. 企业端点网络安全行业调研报告 - 市场现状分析与发展前景预测
  17. 微信小程序提示:https://www.xxxxx.com 不在以下 request 合法域名列表中,请参考文档....
  18. 安卓 android
  19. (12)筋斗云案例(导航栏醒目显示跟随)
  20. 青岛大学计算机专业春考,青岛大学春季高考专业

热门文章

  1. 部署linux的环境,Jenkins安装与配置
  2. think in java i o_5.[Think in Java笔记]Java IO系统
  3. html源码md风格,code/html.md at master · Rongx/code · GitHub
  4. 10显示不支持导入dwg文件_Global Mapper中80坐标系高程DEM与kml文件叠加实例
  5. fastdfs笔记_fastDFS 命令笔记-阿里云开发者社区
  6. html 右下角弹窗,javascript实现的右下角弹窗实例
  7. SQL语言学习(六)分组函数学习
  8. Python中定义函数的三种形式
  9. 零基础学Python:使用type、metaclass动态创建方法和属性的详细用法
  10. python内建集合模块collections功能,计数,有序,双向队列