相比.NET中的布局Android依然是略显麻烦,但是依然不妨碍他们有相似之处。Android中有四种不同的布局方式,下面一一叙述。

1. FrameLayout

l 一个FrameLayout对象就好比一块在屏幕上提前预定好的空白区域,然后可以填充一些元素到里边,比方说一张图片等。需要注意的是,所有的元素都被放置在FrameLayout区域最左上的区域。而且无法为这些元素指定一个确切的位置。如果一个FrameLayout里边有多个子元素,那么后边的子元素的显示会重叠在前一个元素上。

l FrameLayout布局和.NET中的背景图片的布局相似,比如窗体的背景,控件的背景等等,以左上为基准。有所不同的是如果.NET中的图片大小小于父容器的话,图片会重复显示。而Android中则是永远向左上角对齐,覆盖上一个子元素。

2. LinearLayout

l 是一种Android中最常用的布局之一,它将自己包含的子元素按照一个方向进行排列。方向有两种,水平或者垂直。这个方向可以通过设置Androidorientation来实现,所有元素的排列都是一个接着一个的。如果是竖直排列,那么LinearLayout的元素就一个接着一个的从上到下竖直排列;如果是水平排列,那么就是LinearLayout里边的子元素从左到右一个一个的进行排列。

l 这种布局和asp.net中的页面布局很类似,都是子元素是一个挤着一个排列的。区别在于Android更明显的把竖直排列和水平排列分开,而asp.net中的则是通过“块元素”和“行元素”来控制排版的。一般情况下“块元素”是类似于Android的竖直排列,即从上到下一个一个排列;“行元素”则是类似于Android的水平排列。

3. RelativeLayout

l 从类的名字上可以猜测出,这是一个相对布局类。即首先RelativeLayout是一个容器,它里边的元素,如Button按钮等的位置是按照相对位置来计算的,例如,有两个Button按钮都布局在一个relativeLayout里边,我们可以定义第二个Button在第一个Button的上边或者是右边。但到底第二个Button在什么位置呢,它还是依赖于第一个Button的位置。需要注意的是,出于性能上的考虑,对于相对布局的精确位置的计算只会执行依稀,所以,如果一个可视化组件B依赖于A,那么必须要让A出现在B的前边。

l 这种布局和CSS元素相对定位更是异曲同工了,没有啥可稀奇的。唯一有区别的是Android中的相对是相对别人的位置而言,而CSS相对定位是相对自己本来应该在的位置而言的。

4. TableLayout

l 从字面上了解TableLayout是一种表格式的布局。这种布局会把包含的元素以行和列的形式进行排列。表格的列数为每一行的最大列数。当然表格里边的单元格是可以为空的。

l 这种布局和HTML中的table标签是及其类似的,暂时还没有找到明显的区别。

更多相关文章

  1. Android(安卓)开发布局 线性布局---LinearLayout
  2. Android布局文件的属性值解析
  3. android中数据存储及对xml的解析
  4. Android(安卓)属性动画(一):Animator属性动画相对于Animation的优势
  5. Android(安卓)背景透明度设置和设置GridView元素间距
  6. [androidUI]一些布局
  7. Android适配器之-----SimpleExpandableListAdapter
  8. Android(安卓)五大布局之(一) 线性布局和相对布局
  9. hardcode UI for android

随机推荐

  1. Android(安卓)解决方案-6.0不提供org.apa
  2. Android实现SharePreferences和AutoCompl
  3. Android官方文档training中英文翻译目录
  4. [置顶] 自定义漂亮的Android(安卓)SeekBa
  5. Activity常见控件三——progressBar
  6. Android(安卓)Notification从notify到添
  7. AAPT err... ERROR: Unable to open PNG
  8. 装备选择
  9. Android(安卓)Studio开启Lambda
  10. Android(安卓)Studio安装与配置