eoe 移动开发者论坛

 找回密码
 加入eoe

QQ登录

只需一步,快速开始

查看: 492|回复: 6
收起左侧

android的ui可视化界面怎么设置布局

[复制链接]

签到天数: 1 天

连续签到: 1 天

[LV.1]初来乍到

3

主题

30

帖子

111

e币
QQ认证
发表于 2017-1-3 17:18:54 | 显示全部楼层 |阅读模式

没有eoe的账号,级别还太低,出门如何吹牛逼?

您需要 登录 才可以下载或查看,没有帐号?加入eoe

x

(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

                                                                                                    layout to Right

                                                                                                    layout to Left


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

                                                                                                   layout_alignTop  

                                                                                                    layout_align Bottom

                                                                                                     layout_alignRight

                                                                                                    layout_alignLeft

                                                                                                   alignBaseLine 基线可以使文字先对齐

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

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

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

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

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

   foreground 后面的会覆盖前面的

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

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

网格布局:

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

                    columspan跨列而rowspan跨行

szsleep.com/77222
szsleep.com/27727
szsleep.com/72227
szsleep.com/22222
szsleep.com/72722
szsleep.com/27272
szsleep.com/22772
szsleep.com/72722
szsleep.com/22272
szsleep.com/wvmza
szsleep.com/yvghb
szsleep.com/mpghu
szsleep.com/rxtga
szsleep.com/zweys
szsleep.com/yadqy
szsleep.com/dulyz
szsleep.com/grbcp
szsleep.com/qizmn
szsleep.com/fbqmg
szsleep.com/fovws
szsleep.com/nxfnh
szsleep.com/scsan
szsleep.com/zqfzm
szsleep.com/cjyzm
szsleep.com/yxtga
szsleep.com/gfztz
szsleep.com/evrsf
szsleep.com/fjfzt
szsleep.com/bnvij
szsleep.com/qgqyl


该用户从未签到

0

主题

3

帖子

14

e币
发表于 2017-1-9 23:08:50 | 显示全部楼层
可以学习一下,

签到天数: 53 天

连续签到: 1 天

[LV.5]常住居民I

0

主题

79

帖子

510

e币
发表于 2017-3-23 13:10:44 | 显示全部楼层
可以学习一下,对初学者来说 还是不错的

签到天数: 3 天

连续签到: 1 天

[LV.2]偶尔看看I

0

主题

19

帖子

41

e币
发表于 2017-3-24 11:08:57 | 显示全部楼层
可以学习一下!!!!!!!!!!!!!!!!!!!!!

签到天数: 6 天

连续签到: 1 天

[LV.2]偶尔看看I

1

主题

11

帖子

34

e币
QQ认证社区认证会员
发表于 2017-3-24 19:38:01 | 显示全部楼层
敢问大牛在哪里找到的,很有用嘛

签到天数: 1 天

连续签到: 1 天

[LV.1]初来乍到

2

主题

5

帖子

54

e币
发表于 2017-4-20 10:30:57 | 显示全部楼层
4>layout_gravity (适用于父控件中) 但是相对来说是父控件如果是设置的水平方向的布局,那么子空间在垂直方向的属性是有效的,而水平方向的布局属性是没有作用的,反之一样,这句话有点不理解

签到天数: 13 天

连续签到: 1 天

[LV.3]偶尔看看II

0

主题

24

帖子

194

e币
发表于 2017-4-20 17:08:37 | 显示全部楼层
可以的。..............................
*滑动验证:
您需要登录后才可以回帖 登录 | 加入eoe

本版积分规则

推荐阅读
赞助商们

QQ|联系我们|小黑屋|手机版|eoe 移动开发者论坛 ( 京ICP备11018032 京公网安11010802020210  

GMT+8, 2017-7-21 10:29 , Processed in 0.574840 second(s), 23 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表
关闭

扫一扫 关注eoe官方微信