Android培训
美国上市Android培训机构

400-111-8989

热门课程

Android的UI可视化界面怎么设置布局,Android UI可视化教程

  • 时间:2017-04-28
  • 发布:Android培训
  • 来源:Android教程

Android的UI可视化界面

(1)界面的布局有以下几种形式:


传统的说是有五大布局:

分别为:线性布局Linearlayout

相对布局RelativeLayout

表格布局TableLayout(现在已经过时了)

绝对布局AbsolutelyLayout

帧布局FrameLayout

常用的布局类型主要是:线性布局和网格布局(GrideLayout),接下来详细的说明一下,这两种布局的特点。

A:线性布局

概念:线性布局是单一方向上的布局,在垂直或者是水平方向上,每一行或者是每一列只能有一个元素。

常用的属性:

1>orientation控制页面布局的大致方向有:vertical和horizontal分别代表垂直和水平方向上的属性

2>background用于布局背景颜色或者是图片的填充

3>layout_weight权重这个属性是很重要的,用于等比例的划分界面

a:权重的使用:

例如,设父控件的宽或者是高为H,

有两个控件分别为a和b设这两个子控件的宽或者是高为H1和H2,

若现在a和b的权重值分别为e和f

则a和b两个子控件的宽和高现在分别为:H1=(H-(H1+H2)))÷(e+f)*e+H1;

同理:H2=(H-(H1+H2)))÷(e+f)*f+H2;

b:对于权重值得设置问题:

如果子控件的要设置的改变比例是在高上那么就把layout_width的值设置为0dp,相反,一样。

原因:如果设置的取值是mach_parent那么很显然会是控件尺寸只差为负值,这样权重大的反而占的空间会比较小,回和预期的设计有冲突

,如果将另一不变的属性设置为一个固定的值,则会造成比例失调,得不到好的调节,所以应该设置为0dp。

4>layout_gravity(适用于父控件中)但是相对来说是父控件如果是设置的水平方向的布局,那么子空间在垂直方向的属性是有效的,而水平方向的布局属性是没有作用的,反之一样

5>gravity(适用于子控件中)子元素相对于自身如果只是在子元素中那么控制的是子控件中的内容

B:相对布局(RelativeLayout的用法)

a:概念:相对布局是相对与父控件的位置进行地布局

成分有:父控件和子控件

b:属性:1)相对于父控件居中的属性:centerInParent

center_horizontal

center-vertical而center_horizontal和center_vertical两者组合在一起相当于centerInParent

2)相对与父控件的对位置的属性:

layoutAlignParentRight

layoutAlignParentLeft

layoutAlignParentBottom

layoutAlignParentTop

接下来就介绍的是控件与控件之间的位置控制

3)兄弟控件之间的位置控制layoutAbove

layoutBottom

layouttoRight

layouttoLeft

4)兄弟控件之间对齐的位置控制:

layout_alignTop

layout_alignBottom

layout_alignRight

layout_alignLeft

alignBaseLine基线可以使文字先对齐

C:在使用的时候我常犯浑的一些地方,例如相对布局不知道东西该怎样摆放总之如果牵扯到***与***对齐,那么就是用4),

如果牵扯到***在***的什么地方就用3)并且是可以组合使用的哦!

注意:若为互斥的元素则以最后一个元素为准,在创建一个id之后可以对着个id进行重复的使用

D:下面进行简单的介绍一下帧布局和网格布局

帧布局中是层层嵌套的关系:上层会覆盖下层

foreground后面的会覆盖前面的

foregroundgravity组件之间不能是互斥的关系

layout_gravity会控制当前组件在父布局中的位置

网格布局:

向数组一样从(0,0)开始,layout_row,layout_column分别表示行和列之后是

columspan跨列而rowspan跨行
上一篇:Android开发微信和支付宝支付教程
下一篇:Android apk 瘦身方法,教你怎么给你开发的Android apk瘦身

Android解析WindowManager知识讲解

【Android优化】APK包资源精简,立减1M

Android 弹性动画的三种实现方式

Android培训教程:Android Gradle高级用法,动态编译技术

选择城市和中心
贵州省

广西省

海南省