Android的布局控制

简单而言,我们使用各种layout布局类,来保存系统提供的小部件(widget)。Android使用基于XML文件的布局。

 

各种不同的布局

Android的布局类型主要有LinearLayout (线性布局), RelativeLayout (相对布局)和TableLayout (表格布局),以及使用ScrollView (可滚动视图)。布局是可以嵌套的。

 

LinearLayout

LinearLayout是继承自ViewGroup。ViewGroup有一个方法是addView(View child, ViewGroup.LayoutParams params),我们可以通过ViewGroup.LayoutParams这类,将一个View作为布局中的一个元素,动态添加到界面中去。

在使用LinearLayout时,可以采用以下几种属性来控制容器的内容:orientation, fill mode, weight,gravity,padding。下面分别来介绍。

orientation

指定布局中的部件的排列方式,是以行排列(horizontal),还是以列排列(vertical)。我们可以通过添加android:orientation属性来设置。Orientation的值可以在运行时,通过调用LinearLayout类的setOrientation()来设置,以调整排列顺序。

Fill Mode

一般来说,部件都需要设置宽度和高度。宽度和高度的值,称为填充。我们可以通过android:layout_width和android_height属性来设置。一般有以下三种数值:

  • 具体的尺寸,比如125px,表示125像素
  • wrap_content,表示采用该部件的自然大小
  • fill_parent,表示该部件会从它的位置开始,填充布局的剩余空间。

后两种填充模式是常用的。因为它们是独立于屏幕尺寸的。

Weight

如果我们需要两个小部件来分摊布局的空间,就需要采用android:weight属性来对丁各个部件所占据的布局空间的比例。如果一个布局中只有两个部件,而你设置了两个部件的weight值是一样的,那么它们俩就会占据剩下空间的1/2。

Gravity

默认情况下,所有的部件都是左对齐和置顶的。如果你希望按照自己的方式来对其的话,就可以通过android:gravity属性或者调用方法setGravity()来设置。一般的数值有:left,center_horizontal,center_vertical, right等等

Padding

默认情况下,部件之间是紧紧相连的。如果你希望部件之间有些间距,那么可以通过设置属性android:padding或者调用方法setPadding()来完成。android:padding同时设置四个方向的值,如果只希望设置某一边的,可以选择android:paddingLeft,android:paddingRight,android:paddingTop,android:paddingBottom

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值