zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

Android组件----RelativeLayout相对布局的属性详解

Android属性组件 详解 布局 ---- 相对 RelativeLayout
2023-09-14 08:57:57 时间

android:layout_centerHrizontal  相对于父元素水平居中

android:layout_centerVertical    相对于父元素垂直居中

android:layout_centerInparent         相对于父元素完全居中

 

android:layout_alignParentBottom      贴紧父元素的下边缘(align:对齐)

android:layout_alignParentLeft      贴紧父元素的左边缘

android:layout_alignParentRight         贴紧父元素的右边缘(默认值为false)

android:layout_alignParentTop            贴紧父元素的上边缘

android:layout_alignWithParentIfMissing     如果对应的兄弟元素找不到的话就以父元素做参照物

 

2、第二类:属性值必须为id的引用名"@id/id-name"

android:layout_below              在某元素的下方

android:layout_above              在某元素的的上方

android:layout_toLeftOf    在某元素的左边

android:layout_toRightOf   在某元素的右边

 

android:layout_alignTop    本元素的上边缘和某元素的的上边缘对齐

android:layout_alignLeft    本元素的左边缘和某元素的的左边缘对齐

android:layout_alignBottom  本元素的下边缘和某元素的的下边缘对齐

android:layout_alignRight  本元素的右边缘和某元素的的右边缘对齐

 

3、第三类:属性值为具体的像素值,如30dp(外边距和内边距)

android:layout_margin         外边距(margin:边缘)

android:layout_marginTop           上外边距

android:layout_marginBottom      下外边距 

android:layout_marginLeft           左外边距

android:layout_marginRight         右外边距

 

android:padding   内边距(padding:填充)

android:paddingTop  上内边距

android:paddingBottom  下内边距

android:paddingLeft   左内边距

android:paddingRight           右内边距

 

4、第四类:android4.2新增属性 

android:layout_alignStart         两个控件开始对齐

android:layout_alignEnd                 两个控件结束对齐

android:layout_alignParentStart      子控件和父控件开始对齐

android:layout_alignParentEnd  子控件和父控件结束对齐

 

二、外边距和内边距的解释:

来看下面这张图:

 

例如:当在布局文件中,

将第一个TextView加入如下代码:(注:margin的意思是“边缘”)

android:layout_margin="30dp"

将第二个TextView加入如下代码:(注:padding的意思是“填充”)

android:padding="20dp"

最终效果如下: 

 

三、对齐至控件的基准线:

android:layout_alignBaseline      与某元素的基准线对齐

什么是基准线?

基准线:为了保证印刷字母的整齐而划定的线。

上图中的第三条线就是基准线。

完整版代码举例:

复制代码
 1 RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

 2 xmlns:tools="http://schemas.android.com/tools"

 3 android:layout_width="match_parent"

 4 android:layout_height="match_parent" 

 5 TextView

 6 android:id="@+id/tv1"

 7 android:layout_width="wrap_content"

 8 android:layout_height="wrap_content"

 9 android:background="#FFE4E1"

10 android:textSize="30dp"

11 android:text="shengmingyihao" / 

13 TextView

14 android:id="@+id/tv2"

15 android:layout_width="wrap_content"

16 android:layout_height="wrap_content"

17 android:background="#D3D3D3"

18 android:layout_toRightOf="@id/firstView"

19 android:layout_alignBaseline="@id/tv1"

20 android:text="smyhvae" / 

21 /RelativeLayout 
复制代码

上方代码的第19行就是将tv2对齐至tv1的基准线。

显示效果如下:

上图中绿色的虚线即为基准线。

 

三、其他属性:

1、EditText控件:

android:hint 设置EditText为空时输入框内的提示信息。

2、android:gravity

android:gravity 该属性是对该view里面的内容的限定。比如一个button里面的text,你可以设置该text在view的靠左、靠右等位置。

以button为例:

android:gravity="right"    可以让button里面的文字靠右

android:gravity="top"     可以让编辑框EditText的光标置于左上方

3、android:gravity和线性布局中的android:layout_gravity区别:


比如弄个最外布局,然后里面包了几个布局,如果要使这几个布局都靠底,就可以在最外布局的属性里设置androi:gravity="botton"  因为gravity是对里面的内容起作用。


Android零基础入门第28节:轻松掌握RelativeLayout相对布局 原文:Android零基础入门第28节:轻松掌握RelativeLayout相对布局 在前面三期中我们对LinearLayout进行了详细的解析,LinearLayout也是我们用的比较多的一个布局。但在实际开发中使用LinearLayout远远不够,我们本期一起来学习RelativeLayout。
生命壹号 个人网站:smyhvae.com。博客园:cnblogs.com/smyhvae。微信公众号:生命团队 | vitateam