Android
系统五大布局详解
Layout
我们知道
Android
系统应用程序一般是由多?/p>
Activity
组成?/p>
而这?/p>
Activity
以视图的形式展现?
我们面前?/p>
视图都是由一个一个的组件构成的。组件就是我们常见的
Button
?/p>
TextEdit
等等。那么我?/p>
平时看到?/p>
Android
手机中那些漂亮的界面是怎么显示
出来的呢?这就要用到
Android
的布局管理器了?/p>
网上有人比喻的很好:布局好比是建筑里的框架,组件按照布局的要求依次排列,就组成了用于看见的漂
亮界面了?/p>
在分析布局之前,我们首先看看控件:
Android
中任何可视化的控件都是从
android.veiw.View
继承
而来的,
系统提供了两种方法来设置视图?/p>
第一种也是我们最常用的的使用
XML
文件来配?/p>
View
的相关属
性,
然后在程序启动时系统根据配置文件来创建相应的
View
视图?/p>
第二种是我们在代码中直接使用相应?/p>
类来创建视图?/p>
如何使用
XML
文件定义视图?/p>
每个
Android
项目的源码目录下都有?/p>
res/layout
目录,这个目录就是用来存放布局文件的。布局
文件一般以对应
activity
的名字命名,
?/p>
.xml
为后缀?/p>
?/p>
xml
中为创建组件时,
需要为组件指定
id,
如:
android:id="@+id/
名字
"
系统会自动在
gen
目录下创建相应的
R
资源类变量?/p>
如何在代码中使用视图?/p>
在代码中创建每个
Activity
时,一般是?/p>
onCreate()
方法中,调用
setContentView()
来加载指定的
xml
布局文件,然后就可以通过
findViewById()
来获得在布局文件中创建的相应
id
的控件了,如
Button
等?/p>
如:
private
Button btnSndMag;
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.main);
//
加载
main.xml
布局文件
btnSndMag = (Button)
this
.findViewById(R.id.btnSndMag);
//
通过
id
找到对于?/p>
Button
组件
....
}
下面我们来介?/p>
Android
系统中为我们提供的五大布局?/p>
LinearLayout(
线性布局
)
?/p>
FrameLayout(
单帧
布局
)
?/p>
AbsoluteLayout(
绝对布局
)
?/p>
TablelLayout(
表格布局
)
?/p>
RelativeLayout(
相对布局
)
。其中最常用
的的?/p>
LinearLayout
?/p>
TablelLayout
?/p>
RelativeLayout
。这些布局都可以嵌套使用?/p>
?/p>
1
?/p>
LinearLayout
线性布局