配色: 字号:
《Android项目式程序设计》02 Android 应用界面设计写字字帖
2023-05-24 | 阅:  转:  |  分享 
  
项目二Android 应用界面设计学习目标了解视图与View组件掌握Android 应用界面的设计布局技术掌握Dialog组件相关的知识和技
能情景导入Android市场不断拓展,用户对Android界面设计的要求也越来越高,希望有一个美观、整洁、实用的界面,因此Andr
oid提供了一些常用控件来实现界面的设计。本次任务主要是设计应用界面。任务描述【功能描述】使用线性布局技术来设计应用界面主界面布局
使用FragmentTabHost实现三个界面切换挑选界面控件栏中控件,使用线性布局设计第一个界面使用常用布局设计第二个界面在第三
个界面实现对话框功能任务技能技能点1 控件属性介绍各个控件的继承关系如图2.9所示,了解各个控件的继承关系对之后项目的内容理解有
很大的帮助。任务技能1 文本框与编辑框TextView继承了View,是EditView的父类,TextView是一个文本编辑器但
Android关闭了它的编辑功能。开发一个可编辑的文本框可使用它的子类EditView,EditView是允许用户编辑的文本框。E
ditText与TextView共用大部分XML属性和方法,二者之间的区别为EditText可接受用户输入信息,文本框与编辑框属性
及描述如表2.1所示。表2.1 文本框与编辑框属性及描述任务技能任务技能2 Button组件Button继承了TextView,
可供用户点击,点击的时候时会触发onClick事件(点击事件)。按钮使用简单,可设置Button的背景以及文字等属性,如果背景为不
规则图片则能够开发出不同规则形状的按钮,Button的属性设置方法及描述如表2.2所示。表2.2 Button属性设置方法及描述任
务技能任务技能3 状态开关ToggleButton按钮是由Button派生出来的,所以Button的所有属性、方法也同样可以用于
ToggleButton。它的作用一般是切换程序中的某种状态,ToggleButton属性设置方法及描述如表2.3所示。4 Im
ageView及其子类ImageView继承自View组件,它的功能就是显示图片,只要是Drawable对象,就可使用ImageV
iew来显示它。 任务技能任务技能5 列表视图与网格视图ListView是手机系统中使用非常广泛的一种组件,它继承自Linear
Layout布局,以垂直(vertical)列表的形式显示所有列表项,LinearLayout布局会再技能点二中进行讲解,生成列表
视图有如下两种方式。直接使用ListView进行创建让Activity继承ListActivity GridView与ListVi
ew相似性十分的高,都是列表项,但是ListView只可以显示一列,而GirdView可显示多列。ListView与GridVie
w都会使用到适配器,常用适配器如表2.5所示。任务技能任务技能技能点2 基本布局不同型号的手机分辨,尺寸不完全相同,如何让程序手
动控制每个组件的大小位置,会给编程带了很大的困难。为了让不同组件在不同的手机屏幕上都能运行良好, Android提供了布局管理器,
可以根据运行平台调整组件的大小,程序员选择合适的布局管理器。在Android系统中提供了五种基本的布局方式,通过这五种布局方式,能
够实现大多数复杂界面的设计,继承关系如图2.14所示。任务技能2.14 布局继承关系图任务技能1 线性布局(LinearLayo
ut)线性布局是将控件排放在水平方向或者垂直方向的一条线上。在线性布局中还有一些比较常用的属性与设置方法,如表2.6所示。 任务技
能任务技能2 相对布局(RelativeLayout)相对布局是按照控件间的相对位置进行布局,可以选择某个控件作为参照,其它的控
件可以在它的任意方向,例如“android:layout_below”属性指在某个控件的下面。RelativeLayout的重要属
性如表2.7所示。任务技能任务技能3 表格布局(TableLayout)表格布局其与平时使用的Excel表格类似,都是将子元素的
位置设置到具体的行或列中。一个TableLayout是由许多的TableRow组成的,一个TableRow就相当于TableLay
out中的一行, TableRow是 LinearLayout的一个子类,它的某些属性是一直不变的,比如说排列方式属性值恒为hor
izontal,它的android:layout_width和android:layout_height属性值恒为match_pa
rent和wrap_content。因此其子元素都是横向排列并且宽高一致的。因为这些系统已经设定这样的属性使得每个TableRow
中的子元素都可以认为是表格中的单元格。在TableLayout里,单元格可以为空,但注意不能跨行。任务技能表格布局管理器中,可为单
元格设置如下三种行为方式。Shrinkable:如果某列被设为Shrinkable,则该列所有单元格宽度可被变大或者变小,这样将列
设置Shrinkable就可以让表格适应父容器的宽度。Stretchable:如果某列被设为Stretchable,那么该列的所有
单元格宽度可被拉长或者拉短,这样就能保证组件能填满表格的剩余空间。Collapsed:如果某列被设为Collapsed,那么该列的
所有单元格都不显示了。任务技能4 帧布局(FrameLayout)FrameLayout是五大布局中最简单的一种布局,在该布局中
,整个界面被当成一块空白的没有任何组件的区域,所有的子元素都不能被指定放置的位置,这一点是其它布局的最大差别,所有的子组件系统会被
默认放于这块区域的左上角,并且后面的子元素直接覆盖前面的子元素之上,将前面的子元素部分或全部遮挡。例如在画板上刷颜料,刷一层就会将
原本位置的颜色覆盖。任务技能5 绝对布局(AbsoluteLayout)相较于其他的几种布局,绝对布局是很好理解的一种布局,平时
在生活中,我们的家具都是一般摆放在一个固定位置的,以房子的一个角作为坐标原点,然后这个位置就可以用X,Y来表示。绝对布局中通过an
droid:layout_x和android:layout_y来指定其子元素的准确的坐标位置。当使用AbsoluteLayout作
为布局容器是,布局容器不再管理子组件的位置,大小这些需要程序员自行控制。任务技能技能点3 Dialog1 Dialog介绍Dial
og是Android开发过程中最常用到的组件之一,它可以用来弹出一个窗体,这个窗体的内容大多用来提示或警告用户,Dialog对话框
可以分为5大类,分别是警告对话框(AlertDialog)、进度对话框(ProgressDialog)、日期选择对话框(DateP
ickerDialog)、时间选择对话框(TimePickerDialog)、自定义对话框(从Dialog继承)。任务技能Dial
og的创建方式有两种:第一种是new一个Dialog对象,调用Dialog对象的show()和dismiss()方法控制对话框的显
示和隐藏。第二种在Activity的onCreateDialog(int id)方法中 创建Dialog对象并返回,调用Activ
ty的showDialog(int id)和dismissDialog(int id)来显示和隐藏对话框。区别在于通过第二种方式创
建的对话框会继承Activity的属性,如获得Activity的menu事件等。任务技能AlertDialog的构造方法都是Pro
tected(有保护的),不能直接新建AlertDialog,要使用AlertDialog.Bulider中的create()方法
来创建一个弹窗窗口。想要使用AlertDialog.Bulider创建对话框需要掌握以下几个方法,如表2.8所示。任务技能任务实施
第一步:在Eclipse中创建一个Android工程,从选择控件栏(如图2.18所示)中所需控件设计主界面。如图2.5所示,具体如
代码CORE0201所示。图2.11 界面布局任务实施第二步:在“res”→“layout”下创建tab_item_view.xm
l文件填充主界面中FrameLayout信息第三步:创建FragmentPage1文件,并设计界面1第四步:创建FragmentP
age2文件,并设计界面2。第五步:创建FragmentPage3文件,并设计界面3。第六步:运行程序。任务总结本项目主要讲解了界面布局中一些控件的使用方法以及布局的方式,并且介绍了信息提示框与选择框的知识点以及使用方法,通过本项目的学习能够熟练地编写布局并掌握提示框用法。英语角layout? 布局background? 背景?color? 颜色drawable 可拉的create 创造size 大小text 文本gravity 重力center 中心
献花(0)
+1
(本文系大高老师首藏)