通常我们开发的应用程序都是需要具有友好的用户界面,那么Android中提供了哪些布局方式呢?当我们构思好了所需要的各种控件的时候,怎样才能将它们放到Android设备屏幕上正确的位置呢?在Android中,Layout是负责管理控件在屏幕的位置的类,并且提供了几个简单的布局模型,开发人员通过将这几种布局模型的组合可以构建出我们想要的复杂的用户界面。本文中,将会对其一一做简单的介绍,笔者主要写了一个简单的程序,以一个ListView显示五种布局,读者可以点击相应的布局选项查看布局效果。(注:由于内容比较多,加上笔者最近复习考试,所以内容不全,后面慢慢补上)

Android开发 第五课 Android的几种布局方式_第1张图片

(主界面程序列出五种基本的布局方式,选择各种布局可以查看效果)

1、线性布局

线性布局方式是我们应用程序中最常用的布局方式,主要提供控件水平或者垂直排列的模型,在主界面中点击LinearLayout选项,将会进入线性布局效果显示界面,如下图:

Android开发 第五课 Android的几种布局方式_第2张图片

查看该布局界面文件,如下所示:

线性界面布局内容

从上述我们可以看出,通过灵活的组合LinearLayout布局方式,可以很容易的设计出复杂的一些界面。如下图所示:

Android开发 第五课 Android的几种布局方式_第3张图片

2、坐标布局

坐标布局对于有过.Net Winform开发经验的人员来说应该比较熟悉了,即控件的在父容器上所处的位置主要是有其横纵坐标决定的~在坐标布局中,坐标系如下所示:

Android开发 第五课 Android的几种布局方式_第4张图片

对于该布局的示例效果,笔者主要是通过按左右键来控制小人左右移动来讲解的,如下图:

Android开发 第五课 Android的几种布局方式_第5张图片 Android开发 第五课 Android的几种布局方式_第6张图片

Android开发 第五课 Android的几种布局方式_第7张图片 Android开发 第五课 Android的几种布局方式_第8张图片

界面布局内容如下:

复制代码
<? xmlversion="1.0"encoding="utf-8" ?>
< AbsoluteLayout xmlns:android ="http://schemas.android.com/apk/res/android"
android:id
="@+id/AbsoluteLayout01"
android:layout_width
="fill_parent"
android:layout_height
="fill_parent"
>
< TextView android:id ="@+id/txtIntro"
android:text
="按左右键控制小人运动"
android:layout_width
="fill_parent"
android:layout_height
="wrap_content"
android:layout_x
="20dip"
android:layout_y
="20dip" >
</ TextView >
< ImageView android:id ="@+id/imgMan"
android:layout_width
="wrap_content"
android:layout_height
="wrap_content"
android:layout_x
="100dip"
android:layout_y
="100dip" >
</ ImageView >
</ AbsoluteLayout >
复制代码

实现控制小人左右走动的动画代码在AbsoluteLayoutActivity.java文件中,内容如下:

控制人物运动代码

从这个例子可以看出,实现帧动画的一种方式就是通过不断的改变ImageView控件的横纵坐标,同时更换背景图片即可。

3、表格布局

表格布局主要以行列的形式来管理子控件,其中每一行即一个TableRow对象,每个TableRow对象可以添加子控件,并且每加入一个空间即相当于添加了一列。本文中的示例效果如下所示:

Android开发 第五课 Android的几种布局方式_第9张图片

表格界面布局文件内容如下:

表格布局内容

展开上述布局内容,最外层是一个垂直布局的LinearLayout的,在其中有四个TableLayout布局,分别展示了四种不同类型的TableLayout布局方式。

4、相对布局

5、帧布局

点击FrameLayout选项,将会进入帧布局效果显示界面,如下图:

Android开发 第五课 Android的几种布局方式_第10张图片

上图看上去是不是有点不自然,这是因为上图是通过两个ImageView图片显示控件将两张图片叠在一起显示的。先看下布局界面是怎么编写的:

复制代码
<? xmlversion="1.0"encoding="utf-8" ?>
< FrameLayout xmlns:android ="http://schemas.android.com/apk/res/android"
android:id ="@+id/FrameLayout01"
android:layout_width ="fill_parent"
android:layout_height ="fill_parent"
>
< ImageView
android:id ="@+id/img1"
android:src ="@drawable/shirt"
android:layout_width ="wrap_content"
android:layout_height ="wrap_content" >
</ ImageView >

< ImageView
android:id ="@+id/img2"
android:paddingLeft ="100dip"
android:paddingTop ="18dip"
android:src ="@drawable/head1"
android:layout_width ="wrap_content"
android:layout_height ="wrap_content" >
</ ImageView >
</ FrameLayout > 复制代码

可见第一个ImageView控件显示的是T-shirt图片,而第二个ImageView控件则是显示我爱罗的头像。需要注意的是,在帧布局中,先添加的图片会被后添加的图片覆盖。


更多相关文章

  1. Android的几种布局方式
  2. Android的盈利方式---学习别人的经验
  3. android中的布局 (一)TextView 的属性介绍
  4. 控件事件android中自定义控件
  5. android 图片圆角 遮罩_安卓圆角、背景遮罩。覆盖实现方式(适用于
  6. android 创建快捷方式图标到桌面
  7. Android 动态设置控件高度

随机推荐

  1. 布局添加下划线
  2. Android仿微信底部菜单
  3. Android(安卓)App 性能优化之稳定性
  4. Android内核解读-Android系统的开机启动
  5. Android(安卓)bind其他或第三方APK Servi
  6. 【转】Android中图片的处理(放大缩小,去色,
  7. Android(安卓)View初始化基本流程
  8. 【ndk】直接使用ndk提供的arm-linux-andr
  9. android 拍照获得的照片太小太娇气 的 解
  10. 关于android studio 升级4.4之后的坑Unab