博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android脚步--Relativelayout设置
阅读量:4496 次
发布时间:2019-06-08

本文共 2361 字,大约阅读时间需要 7 分钟。

引自

 

以下大部为用在RelativeLayout中的一些参数:

android:layout_above 将该控件的底部至于给定ID的控件之上,但不会左对齐,默认置于父窗口最左边,会覆盖最左边的控件

android:layout_below 将该控件的顶部至于给定ID的控件之下,但不会左对齐,默认置于父窗口最左边,会覆盖最左边的控件

android:layout_toLeftOf 将该控件的右边缘和给定ID的控件的左边缘对齐,默认置于父窗口最上面,会覆盖最上面的控件

android:layout_toRightOf 将该控件的左边缘和给定ID的控件的右边缘对齐,默认置于父窗口最上面,会覆盖最上面的控件

android:alignParentBottom 如果该值为true,则将该控件的底部和父控件的底部对齐,默认置于父窗口最左下,会覆盖最左下的控件

android:layout_alignParentLeft 如果该值为true,则将该控件的左边与父控件的左边对齐,默认置于父窗口最左上,会覆盖最左上的控件

android:layout_alignParentRight 如果该值为true,则将该控件的右边与父控件的右边对齐,默认置于父窗口最右上,会覆盖最右上的控件

android:layout_alignParentTop 如果该值为true,则将控件的顶部与父控件的顶部对齐,默认置于父窗口最左上,会覆盖最左上的控件

android:layout_alignBaseline该控件的baseline和给定ID的控件的baseline对齐,并置于父窗口最左边,会覆盖最左边的控件

android:layout_alignBottom 将该控件的底部边缘与给定ID控件的底部边缘对齐,并置于父窗口最左边,会覆盖最左边的控件

android:layout_alignLeft 将该控件的左边缘与给定ID控件的左边缘对齐,并置于父窗口最上边,会覆盖最上边的控件

android:layout_alignRight 将该控件的右边缘与给定ID控件的右边缘对齐,并置于父窗口最上边,会覆盖最上边的控件

android:layout_alignTop 将给定控件的顶部边缘与给定ID控件的顶部对齐,并置于父窗口最左边,会覆盖最左边的控件

 

1、 相对布局的基本概念 

一个控件的位置它决定于它和其他控件的关系,好处:比较灵活;缺点:掌握比较复杂。 
2、 相对布局常用属性介绍 
这里将这些属性分成4个组,便于理解和记忆。 
a)、以下4个属性设置控件与之间的关系和位置 

但是上面4个属性并没有设置各个控件之间是否对齐。 
示例1:将控件A放置在控件B的上面,则使用android:layout_above属性,控件布局的效果可以有以下这么两种情况。 
1、 控件A与控件B对齐,并且控件A是在控件B的上面。 
2、 控件A没有与控件B对齐,但是控件A又确实是在控件B的上面。 

 

b)、以下5个属性,设置的是控件与控件之间对齐的方式(是顶部、底部还是左、右对齐)。 

示例2:在示例1的基础上,设置控件A放置在控件B的上面,使用android:layout_above属性,并且控件A的右边边缘与控件B的右边边缘对齐,使用android:layout_alignRight属性。 

c)、以下4个属性设置控件与父控件之间对齐的方式(是顶部、底部还是左、右对齐)。 

d)、以下4个属性设置控件的方向。 

可以通过组合这些属性来实现各种各样的布局。 
注:以上属性和其他更多属性的作用都能在android的帮助文档中找到; 

3.gravity和layout_gravity

android:gravity   android:gravity属性是对该view 内容的限定.比如一个button 上面的text.  你可以设置该text 在view的靠左,靠右等位置.以button为例,android:gravity="right"则button上面的文字靠右  android:layout_gravity  android:layout_gravity是用来设置该view相对与起父view 的位置.比如一个button 在linearlayout里,你想把该button放在靠左、靠右等位置就可以通过该属性设置.以button为例,android:layout_gravity="right"则button靠右

示例3:假如要实现一个如下图这样布局的程序 

如果这样的布局要使用LinearLayout的话会比较麻烦和复杂, 
1、 首先需要一个垂直布局方向的LinearLayout,包裹所有的控件; 
2、 然后在第一个LinearLayout中嵌套一个垂直方向的LinearLayout,放在上部分,在这个LinearLayout中放入一个TextView和EditText; 
3、 最后还是在第一个LinearLayout中嵌套一个水平方向的LinearLayout,放在第一个LinearLayout的下部分,在这个LinearLayout中放入两个Button,并且还得让它们居右。 
可参考下图: 

 

如果使用RelativeLayout会要简单很多,下面为main.xml的代码。 

1.
2. 3.
8.
14. 15.
22. 23.
32. 33.
41.

 

转载于:https://www.cnblogs.com/Anita9002/p/4159277.html

你可能感兴趣的文章
Centos下,Docker部署Yapi接口管理平台(详细得令人发指)
查看>>
hdu 5248 序列变换(二分枚举)
查看>>
Hadoop mapreduce 浑身都是芝士点
查看>>
对HTTP、HTTPS、Socket的理解以及三者的关系
查看>>
iOS-Debug Symbol(调试符号)
查看>>
IOS开发中(null)与<null>的处理
查看>>
MongoDB小结18 - find【查询条件$not】
查看>>
常见的hbase jar
查看>>
远峰E路航V700pro安装游戏方法
查看>>
Dubbo 详细介绍
查看>>
冲刺第十天
查看>>
第三周syh
查看>>
第七周作业
查看>>
Android中的SharedPreferences存储
查看>>
快速幂
查看>>
bzoj1150 [CTSC2007]数据备份Backup 双向链表+堆
查看>>
learning scala write to file
查看>>
Sticker.js生成图片或者页面元素“速干贴”效果
查看>>
Bootstrap3生成响应式的特价商品展示布局
查看>>
get and set method
查看>>