1.相对布局RelativeLayout:
1、 相对布局的基本概念 :
一个控件的位置它决定于它和其他控件的关系,好处:比较灵活;缺点:掌握比较复杂。
2、 相对布局常用属性介绍 :
android:layout_marginTop="25dip" //顶部距离
android:gravity="left" //空间布局位置
android:layout_marginLeft="15dip //距离左边距
// 相对于给定ID控件
android:layout_above 将该控件的底部置于给定ID的控件之上;
android:layout_below 将该控件的底部置于给定ID的控件之下;
android:layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐;
android:layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘对齐;
android:layout_alignBaseline 将该控件的baseline与给定ID的baseline对齐;
android:layout_alignTop 将该控件的顶部边缘与给定ID的顶部边缘对齐;
android:layout_alignBottom 将该控件的底部边缘与给定ID的底部边缘对齐;
android:layout_alignLeft 将该控件的左边缘与给定ID的左边缘对齐;
android:layout_alignRight 将该控件的右边缘与给定ID的右边缘对齐;
// 相对于父组件
android:layout_alignParentTop 如果为true,将该控件的顶部与其父控件的顶部对齐;
android:layout_alignParentBottom 如果为true,将该控件的底部与其父控件的底部对齐;
android:layout_alignParentLeft 如果为true,将该控件的左部与其父控件的左部对齐;
android:layout_alignParentRight 如果为true,将该控件的右部与其父控件的右部对齐;
// 居中
android:layout_centerHorizontal 如果为true,将该控件的置于水平居中;
android:layout_centerVertical 如果为true,将该控件的置于垂直居中;
android:layout_centerInParent 如果为true,将该控件的置于父控件的中央;
// 指定移动像素
android:layout_marginTop 上偏移的值;
android:layout_marginBottom 下偏移的值;
android:layout_marginLeft 左偏移的值;
android:layout_marginRight 右偏移的值;
android:id --- 为控件指定相应的ID
android:text --- 指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符串
android:grivity --- 指定控件的基本位置,比如说居中,居右等位置这里指的是控件中的文本位置并不是控件本身。
android:textSize --- 指定控件当中字体的大小
android:background --- 指定该控件所使用的背景色,RGB命名法
android:width --- 指定控件的宽度
android:height --- 指定控件的高度
android:padding* --- 指定控件的内边距,也就是说控件当中的内容
android:sigleLine --- 如果设置为真的话,则控件的内容在同一行中进行显示
下边是相对布局属性的说明:RelativeLayout
android:layout_above 将该控件的底部至于给定ID控件之上
android:layout_below 将该控件的顶部至于给定ID的控件之下
android:layout_toLeftOf 将该控件的右边缘和给定ID的控件左边缘对齐
android:layout_toRightOf 将该控件的左边缘和给定ID的控件的右边缘对齐
android:layout_alignBaseline 该控件的baseline和给定ID的控件的baseline对齐
android:layout_alignBottom 将该控件的底部边缘与给定ID控件的底部边缘对齐
android:layout_alignLeft 将该控件的左边缘与给定ID控件的左边缘对齐
android:layout_alignRight 将该控件的右边缘与给定ID控件的右边缘对齐
android:layout_alignTop 将该控件的顶部边缘与给定ID控件的顶部对齐
android:alignParentBottom 如果该值为true,则将该控件的底部和父控件的底部对齐
android:layout_alignParentLeft 如果该值为true,则将该控件左边与父控件的左边对齐
android:layout_alignParentRight 如果该值为true,则将该控件的右边与父控件的右边对齐
android:layout_alignParentTop 如果该值为true,则将该控件的顶部与父控件的顶部对齐
android:layout_centerHorizontal 如果为真,该控件将被至于水平方向的中央
android:layout_centerInParent 如果为真,该控件将被至于父控件水平方向和垂直方向的中央
android:layout_centerVertical 如果为真,该控件将被至于垂直方向的中央
android:layout_marginLeft此属性用来设置控件之间的间隙(控件和控件之间和内边距不同)
android:padding="3dip"说明了四边的内边距是3dip
代码:
案列如下:
第一类:属性值为true或false
android:layout_centerHrizontal 水平居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent 相对于父元素完全居中
android:layout_alignParentBottom 贴紧父元素的下边缘
android:layout_alignParentLeft 贴紧父元素的左边缘
android:layout_alignParentRight 贴紧父元素的右边缘
android:layout_alignParentTop 贴紧父元素的上边缘
android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物
第二类:属性值必须为id的引用名“@id/id-name”(id命名为:@+id/.....)
android:layout_below 在某元素的下方
android:layout_above 在某元素的的上方
android:layout_toLeftOf 在某元素的左边
android:layout_toRightOf 在某元素的右边
android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐
android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐
android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐
android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐
第三类:属性值为具体的像素值,如30dip,40px
android:layout_marginBottom 离某元素底边缘的距离
android:layout_marginLeft 离某元素左边缘的距离
android:layout_marginRight 离某元素右边缘的距离
android:layout_marginTop 离某元素上边缘的距离
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靠右
2.绝对布局AbsoluteLayout:
绝对布局已经过时了,因为它的布局空间太过于绝对有局限性,在不同分辨率的手机上会出现误差。
3.RTL(从右往左)
Android4.2之后才能用,一般在阿拉伯语中使用,在中国很少使用。
属性有:
android:layout_marginStart--外间距
android:layoutDirectio=“rtl”--rtl布局
4.布局的包含:
就如web项目中一样jsp界面中引用jsp界面,也就是界面里面包含界面,代码如下:
layout="@layout/界面名" >
5.用Java代码实现布局:
首先找到Java目录下的MainActivity.xml文件,然后在onCreate方法里面写代码即可
//实例化一个linearlayout布局 LinearLayout layout=new LinearLayout(this); //实例化按钮 Button button=new Button(this); button.setText("我是一个小按钮"); //把按钮放入布局上 layout.addView(button);
//把布局放入手机
setContentView(layout);然后就是连接模拟器:
点击AndroidStudio左下角的Android Monitor,如果出现空白的话就在桌面上建立一个文档,文档内容如下:
c:(模拟器安装路径)--找到自己的安装路径
cd C:\Users\Administrator\AppData\Roaming\Nox\bin(模拟器安装路径)
nox_adb.exe connect 127.0.0.1:62001
文档命名为.bat,然后打开模拟器并双击文档等待Androidstudio里面加载完毕后点击下面图中的绿色播放键即可
如果你使用得是eclipse的话直接连接就可以了。