第4章 Android UI(用户界面)基础
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4.4 Android UI布局
3、指定移动像素的XML属性
XML属性名称 android:layout_mar ginTop android:layout_mar ginBottom android:layout_mar ginLeft 描述 上偏移的值 下偏移的值 左偏移的值
android:layout_mar ginRight
4.4 Android UI布局
2、打开项目工程中res—>layout目录下main.xml文件,设置布局, 添加5个button按钮,按钮分别显示button1、button2等 3、src目录下com.hisoft.activity包下LinearLayoutActivity.java 文件和res—>values目录下strings.xml文件,都暂不做修改。 部署运行项目工程
,应用程序名为RelativeLayoutDemo,包名为com.hisoft.activity,
创建的Activity的名字为RelativeLayoutActivity,最小SDK版本根 据选择的目标API会自动添加为10
4.4 Android UI布局
右偏移的值
4.4 Android UI布局
4.4.4 相对布局应用案例
使用文本控件TextView和EditView及两个button按钮控件实现相 对排列的功能,具体实现步骤如下: 1、如上节一样,在Eclipse中选择File—>New—>Android Project,创建一个新的Android工程,项目名为 RelativeLayoutDemo,目标API选择10(即Android 2.3.3版本)
android:weightSum
LinearLayout常用属性及对应方法
4.4 Android UI布局
4.4.2 线性布局应用案例
使用线性布局垂直排列实现了五个button按钮排列的功能,具体 实现步骤如下: 1、在Eclipse中选择File—>New—>Android Project,创建一个新 的Android工程,项目名为LinearLayoutDemo,目标API选择10( 即Android 2.3.3版本),应用程序名为LinearLayoutDemo,包名为 com.hisoft.activity, 创建的Activity的名字为LinearLayoutActivity,最 小SDK版本根据选择的目标API会自动添加为10
android:background
setBackgroundResource(int)
设置背景
android:clickable
setClickable(boolean)
设置View响应单击事件
4.3Android UI控件类简介
4.3.2 ViewGroup类
1、ViewGroup ViewGroup是个特殊的View,它继承于Android.view.View。 ViewGroup是一个抽象类 ViewGroup功能:一个是承载界面布局,另一个是承载具有原 子特性的重构模块
4.2 Android UI框架
Android用户界面框架(Android UI Framework),采用的是比较流 行的MVC(Model-View-Controller)框架模型,MVC模型提供了处 理用户输入的控制器(Controller),显示用户界面和图像的视图 (View),以及保存数据和代码的模型(Model)。
4.1 Android UI简介
4.1.1 手机 UI设计原则
1、需要界面设计与程序逻辑完全分离,这样不仅有利于他 们的并行开发,而且在后期修改界面时,也不用再次修改程 序的逻辑代码 2、根据不同型号手机的屏幕解析度、尺寸和纵横比各不相 同,自动调整界面上部分控件的位置和尺寸,避免因为屏幕 信息的变化而出现显示错误 3、能够合理利用较小的屏幕显示空间,构造出符合人机交 互规律的用户界面,避免出现凌乱、拥挤的用户界面
4.4 Android UI布局
2、要指定参照物的XML属性,layout_alignBottom,layout_toLeftOf, layout_above,layout_alignBaseline系列和其他控件ID
XML属性名称 android:layout_alignBas eline 描述 将该控件的baseline与给定ID的baseline对齐;
4.3Android UI控件类简介
4.3.3 界面控件
Android系统的界面控件分为:定制控件和系统控件两种 常见的系统控件包括文本控件(TextView、EditText)、按钮控 件(Button、ImageButton)、单选和复选按钮控件(Checkbox、 RadioButton)、Spinner、ListView和TabHost等
用户还能够通过可视化工具直接看到所设计的用户界面,有利于加 快界面设计的过程,并且为界面设计与开发带来极大的便利性
4.4 Android UI布局
在Android系统中,布局管理器是控件的容器 Android提供了五种布局管理器用来管理控件,它们是线性布局管理 器(LinearLayout)、表格布局管理器(TableLayout)、帧布局管 理器(FrameLayout)、相对布局管理器(RelativeLayout)和绝对 布局管理器(AbsoluteLayout)。
android应用开发案例教程毋建军androidui掌握androidui的设计原则ui框架及mvc设计掌握视图树模型androidui控件类的分类掌握控件类之间的关系及常用方法掌握各种界面布局的特点和使用方法41androidui411手机ui设计原则1需要界面设计与程序逻辑完全分离这样不仅有利于他们的并行开发而且在后期修改界面时也不用再次修改程序的逻辑代码2根据不同型号手机的屏幕解析度尺寸和纵横比各不相同自动调整界面上部分控件的位置和尺寸避免因为屏幕信息的变化而出现显示错误3能够合理利用较小的屏幕显示空间构造出符合人机交互规律的用户界面避免出现凌乱拥挤的用户界面42androiduiandroid用户界面框架androiduiframework采用的是比较流行的mvcmodelviewcontroller框架模型mvc模型提供了处理用户输入的控制器controller显示用户界面和图像的视图view以及保存数据和代码的模型model
4.3Android UI控件类简介
2、View类通用行为和属性
XML属性名称 android:visibility
Java中对应方法 setVisibility(int)
描述 描述View的可见性
android:id
setId(int)
设置 View 的标识符,一般通过 findViewById方法获取
描述
如果为true,将该控件的顶部与其父控件的顶部对齐; 如果为true,将该控件的底部与其父控件的底部对齐; 如果为true,将该控件的左部与其父控件的左部对齐; 如果为true,将该控件的右部与其父控件的右部对齐; 如果为true,将该控件的置于父控件的水平居中位置;
android:layout_centerVer 如果为true,将该控件的置于父控件的垂直居中位置; tical android:layout_centerInP 如果为true,将该控件的置于父控件的中央; arent
4.4 Android UI布局
Android下创建界面布局的方法有三两种:
1、XML方式,使用XML文件描述界面布局
2、程序代码创建,在程序运行时动态添加或修改界面布局 3、XML和程序代码创建相结合
使用XML文件声明界面布局的优势主要有: 将程序的表现层和控制层分离
在后期修改用户界面时,无需更改程序的源代码
4.4 Android UI布局
XML属性名称
android:layout_alignPare ntTop android:layout_alignPare ntBottom android:layout_alignPare ntLeft android:layout_alignPare ntRight android:layout_centerHo rizontal
布局管理器的主要作用有: 适应不同的移动设备屏幕分辨率 方便横屏和竖屏之间相互切换
管理每个控件的大小以及位置
4.4 Android UI布局
4.4.1 线性布局LinearLayout
线性布局(LinearLayout)是一种常用的界面布局,也是 RadioGroup, TabWidget, TableLayout, TableRow, ZoomControls 类的父类。 如果是垂_alignTop 将该控件的顶部边缘与给定ID的顶部边缘对齐; android:layout_alignBott 将该控件的底部边缘与给定ID的底部边缘对齐; om android:layout_alignLeft android:layout_alignRig ht android:layout_above android:layout_below android:layout_toLeftOf android:layout_toRightO f 将该控件的左边缘与给定ID的左边缘对齐; 将该控件的右边缘与给定ID的右边缘对齐; 将该控件的底部置于给定ID的控件之上; 将该控件的底部置于给定ID的控件之下; 将该控件的右边缘与给定ID的控件左边缘对齐; 将该控件的左边缘与给定ID的控件右边缘对齐;
4.3Android UI控件类简介
4.3.1 View类
1、View类 View是界面的最基本的可视单元,呈现了最基本的UI构造块。
View是Android中最基础的类之一,所有在界面上的可见元素都 是View的子类,类的视图结构是android.view.View,如Button, RadioButton,CheckBox等等,都是通过继承View的方法来实现 的。通过继承View,可以很方便地定制出有个性的控件出来 View有众多的扩展者,它们大部分是在android.widget包中,这 些继承者实际上就是Android系统中的“控件”。直接继承者包 括文本视图(TextView)、图像视图(ImageView)、进度条 (ProgressBar)等
Android应用开发案例教程
毋建军 徐振东 林瀚 编著
清华大学出版社
第4章 Android UI(用户界面)基础
本章学习目标(知识要点)
掌握Android UI的设计原则、UI框架及MVC设计 掌握视图树模型、Android UI控件类的分类 掌握控件类之间的关系及常用方法 掌握各种界面布局的特点和使用方法
4.4 Android UI布局
如果是水平排列,则每列仅包含一个界面元素
4.4 Android UI布局
XML属性名 android:divider android:gravity android:orientation 对应的方法 描述 setDividerDrawable(Dra 设置用于在按钮间垂直分割 wable) 的可绘制对象。 setGravity(int) setOrientation(int) 指定在对象内部,横纵方向 上如何放置对象的内容. 设置线性布局管理器内组件 的排列方式,可以设置为 horizontal (水平排列)、 vertical(垂直排列、默认 值)两个值的其中之一 定义最大的权值和
4.2.1 Android与MVC设计
MVC(Model-View-Controller),即把一个应用的输入、处理、输出 流程,按照Model、View、Controller的方式进行分离,这样一个应用被分 成三个层——模型、视图、控制器。 在Android系统中,视图(View),代表用户交互界面,一个应用可能有 很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集 和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流 程的处理交予模型(Model)处理。
4.2 Android UI框架
4.2.2 视图树模型(View和Viewgroup)
Android用户界面框架(Android UI Framework)采用视图树 (View Tree)模型。即在Android用户界面框架中界面元素是以一种 树型结构组织在一起,并称为视图树。视图树由View和ViewGroup构 成 Android系统会依据视图树的结构从上至下绘制每一个界面元素。 每个元素负责对自身的绘制,如果元素包含子元素,该元素会通知 其下所有子元素进行绘制
4.4 Android UI布局
4.4.3 相对布局RelativeLayout
相对布局(RelativeLayout)是一种非常灵活的布局方式 相对布局的特点: 能够最大程度保证在各种屏幕类型的手机上正确显示界面布局
1、以parent(父控件)为参照物的XML属性,属性取值可以为 true或者false,如下表