博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 相对布局
阅读量:5739 次
发布时间:2019-06-18

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

Activity布局初步 - 相对布局 

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_alignLeft属性。 

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

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

可以通过组合这些属性来实现各种各样的布局。 
注:以上属性和其他更多属性的作用都能在android的帮助文档中找到; 
示例3:假如要实现一个如下图这样布局的程序 

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

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

Java代码 
  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  4.     android:layout_width="fill_parent"  
  5.     android:layout_height="wrap_content"  
  6.     android:padding="10px"  
  7.     >  
  8.     <TextView  
  9.         android:id="@+id/lable"  
  10.         android:text="Type here:"  
  11.         android:layout_width="fill_parent"  
  12.         android:layout_height="wrap_content"  
  13.     />  
  14.       
  15.     <EditText  
  16.         android:id="@+id/entry"  
  17.         android:layout_width="fill_parent"  
  18.         android:layout_height="wrap_content"  
  19.         android:background="@android:drawable/editbox_background"  
  20.         android:layout_below="@id/lable"  
  21.     />  
  22.       
  23.     <Button  
  24.         android:id="@+id/ok"  
  25.         android:layout_width="wrap_content"  
  26.         android:layout_height="wrap_content"  
  27.         android:text="OK"  
  28.         android:layout_below="@id/entry"  
  29.         android:layout_marginLeft="10px"  
  30.         android:layout_alignParentRight="true"  
  31.     />  
  32.       
  33.     <Button  
  34.         android:id="@+id/cancel"  
  35.         android:layout_width="wrap_content"  
  36.         android:layout_height="wrap_content"  
  37.         android:layout_toLeftOf="@id/ok"  
  38.         android:layout_alignTop="@id/ok"  
  39.         android:text="Cancel"  
  40.     />  
  41. </RelativeLayout>  

Android技术交流QQ群:141188656       欢迎加入

 
装在地址:http://www.cnblogs.com/yyyyy5101/archive/2011/06/20/2085407.html
你可能感兴趣的文章
Django_4_视图
查看>>
Linux的netstat命令使用
查看>>
lvm讲解,磁盘故障小案例
查看>>
大快网站:如何选择正确的hadoop版本
查看>>
经过这5大阶段,你离Java程序员就不远了!
查看>>
IntelliJ IDEA 连接数据库详细过程
查看>>
thymeleaf 学习笔记-基础篇
查看>>
PHP-X开发扩展
查看>>
android学习笔记——onSaveInstanceState的使用
查看>>
工作中如何做好技术积累
查看>>
怎么用sysLinux做U盘双PE+DOS??
查看>>
Spring Transactional
查看>>
shell脚本实例
查看>>
我的友情链接
查看>>
Windows Phone 7 隔离存储空间资源管理器
查看>>
Microsoft Excel 2000/2003修复工具
查看>>
apache安装报错undefined reference ssl
查看>>
关于爱情只有一句忠告
查看>>
CentOS 7下安装部署Oracle11g图文教程
查看>>
F#初学笔记06
查看>>