Android应用开发案例教程(Android Studio版)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 一个View就是屏幕上一块矩形区域,负责渲染和上面的事件处理,并可以设 置该区域是否可见,是否可以获取焦点等。
• 对于View类及其子类的属性,可以在布局文件中设置,也可以在Java文件中 动态设置。
例1-7 设计一个文本标签组件程序,有标题和正文,而且翻看的文字超过一屏。
• 把大段文字TextView放在一个ScrollView里面,当文字内容很长的 时候,ScrollView自动会显示滚动条。
android:collapseColumns: 设置需要被隐藏的列序号 android:shrinkColumns: 设置允许被收缩的列序号 android:stretchColumns: 设置运行被拉伸的列序号
设计一个3行4列的表格布局
4 相对布局RelativeLayout
• 相对布局是采用相对其它组件的位置的布局方式。通过指定ID关联其他组件,与之右对齐、 上下对齐等方式来排列组件。 【例1-4】应用相对布局设计一个图片和4个按钮,如下图
应用网格布局设计一个计算器界面
6 约束布局ConstraintLayout
• Android Studio 2.3 版本默认的布局是 ConstraintLayout 。
• 在工作区中有两种预览,一种设计预览,一种叫做蓝图的东西。
• 两者可以辅助进行布局预览。
1.3.1 用户界面组件包 widget
5 网络布局 GridLayout
• 网格布局是把设置区域划分为若干行和若干列的网格,网格中的一个组件可以占据多行或 多列。 布局的属性可以设置组件在网络中的大小和摆放方式。
• 主要属性如下: alignmentMode:设置布局管理器的对齐方式。 columnCount:设置网格列的数量。 rowCount:设置网格行的数量。 layout_columnSpan:设置组件占据的列数。 layout_rowSpan:设置组件占据的行数。
1.1.4 AndroidManifest.xml项目配置文件
每个应用程序都需要,它位于应用程序根目录下
1.1.5 Android应用程序架构分析
1 逻辑控制层与表现层
在Android应用程序中,逻辑控制层与表现层是 分开的设计的。逻辑控制层由Java应用程序实现, 表现层由XML文档描述。
逻辑控制层与表现层关系图
Android 系统为开发人员提供了丰富多彩的用户界面组件,大多数组件在 widget 包。
1.3.2 View 类
• 视图组件View类,是用户界面组件的共同父类。几乎所有的高级UI组件都继 承自View类。例如TextView、Button、List,EditText、RadioButton、 Checkbox 等。
BroadcastReceiver
• 主要用于对应用的外部事件进行响应。 • 通过NotificationManager通知用户事件发生了。 • 通过在AndroidManifest.xml中定义,或者通过context.RegisterReceiver()注册。 • 各种应用还可以通过Context.sendBroadcast()把自己的Intent Broadcast广播
Android应用开发案例教程 (Android Studio版)
目录
01
Android UI设计
03
媒体播放与录制
05
数据存储
02
Activity与多个用户界面
04
广播Broadcast与服务Service
06
图像和动画
07
网络编程技术
Android发展史
• 2003年10月,Andy Rubin等人创建Android公司,并组建Android 团队
• 按照这种模式,图形界面布局为表现层,Activity控制程序为控制层,将应用程序的界面设计 与功能控制设计分离,从而可以单独地修改用户界面。
• Android 系统的布局管理指的是在XML布局文件中设置组件的大小、间距、排列及对齐方式等。 • Android 系统中常见的布局文件有: LinearLayout、FrameLayout、TableLayout、RelativeLayout、
• 2005年8月17日,Google低调收购了成立仅22个月的高科技企业 Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继 续负责Android项目。
Android发展史
• 2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统, 并且在这天谷歌宣布建立一个全球性的联盟组织,该组织由34家手机制造商、 软件开发商、电信运营商以及芯片制造商共同组成,并与84家硬件制造商、 软件开发商及电信营运商组成开放手持设备联盟(Open Handset Alliance) 来共同研发改良Android系统,这一联盟将支持谷歌发布的手机操作系统以 及应用软件。
Intent 和Intent Filter
• Intent :是一个将要执行的操作的抽象描述(Google)。 • 主要用于在不同Activity之间跳转,并且传递数据。 • 主要动作类型:Main、PICK、VIEW、EDIT等,对应的数据以URI表示。 • Intent Filter用于描述Activity能够操作那些Intent对象
2
Activity主程序介绍
• 布局文件与Activity关联是非常重要的一个环节。Activity重写方法onCreate。每个Activity都
要进行一些必要的初始化。
1.2 Android布局管理
• 设计思想:Android系统应用程序的设计模式是采用MVC模式,即把应用程序分为表现层 (View)、控制层(Control)、业务模型层(Model)。
给其他应用。
Service
• 后台运行的应用程序。 • 音乐播放器的后台播放
Content Provider
• 用于在不同应用之间交换数据 • 一个应用通过实现ContentProvider的抽象接口,从而把自己的数
据暴露给其他应用调用,而其他应用程序无需关心数据的存储的 具体细节。
Chap 01
Android UI设计
第一章 目 录
1.1 新建Android项目 1.2 Android布局管理 1.3 用户界面组件包 1.4 常用组件 1.5 列表组件
1.1.1 创建一个新项目
启动Android Studio, 选择“Start a new Android Studio project”菜单。
2 Gradle Scripts模块下的文件目录结构
Gradle是一种依赖管理工具 基于Groovy的内部领域特定(DSL)语言
3
资源目录res及其资源类型
• res目录用于存放项目所需要的声音、图片、用户界面等资源文件。其中最重要的三个目录: 1. drawable目录存放图标资源 2. layout目录存放用户界面布局文件。 3. values目录存放参数描述文件资源,都是XML文件,如字符串string.xml、颜色color.xml、 数组arrays.xml等。
【例1-1】线性布局应用示例 设计一个5个按钮的线性布局
线性布局的控件层级关系
2 帧布局FrameLayout
帧布局FrameLayout是将组件放置到左上角位置,当添加多个组件 时,后面的组件将遮盖之前的组件。在XML布局文件中,由根元素 FrameLayout来标识帧布局。 【例1-2】帧布局应用示例 将图像文件复制到 res/drawable 目k方法。
【例1-8】制作登陆界面
进度条
进度条ProgressBar能直观显示某个操作的进度。
进度条应用示例
单选按钮与复选按钮
values目录下的strings.xml,添加属性为”hello”的元素项的文本内容。 例1-7 strings.xml部分源代码:
<string name="title">《青春》—塞缪尔·厄尔曼\n中译:王佐良</string> <string name="hello">\n青春不是年华,而是心境;......</string>
布局的控件层级关系和属性
图1-11 帧布局示例结果
3 表格布局TableLayout
• 表格布局将页面划分成行列构成的单元格。由根元素TableLayout来标识表格布局。 • 行由<TableRow></TableRow>定义。 • 组件放置到哪一列,由 android:layout_column 指定列编号。 • 三个常用属性
GridLayout、ConstraintLayout。
1.2.2 常见的布局方式
新建布局
布局文件可以单独创建,创建时需要输入文件名,文件名的字母必须全部小写,然 后选择布局类型。
1 线性布局LinearLayout
• 线性布局LinearLayout将组件按照水平或垂直方向排列。 1) 设置线性布局为水平方向 android:orientation = "horizontal” 2) 设置线性布局为垂直方向 android:orientation = "vertical"
按钮Button
• 按钮Button用于处理人机交互的事件。按钮Button是文本标签TextView的子类,继承了文本 标签TextView所有的方法和属性。
• 事件处理的实现步骤:关联控件(如按钮)、设置控件的事件监听、在监听接口添加事件 处理程序。
• 按钮需设置OnClickListener监听。当单击按钮时,通过OnClickListener监听接口触发onClick 事件,实现用户需要的功能。
Android应用程序组成
1.Activity 2.Intent 3.BroadcastReceiver 4.Service 5.Content Provider
Activity
• 相当于手机屏幕的一个页面,上面可以放各种UI组件 • 一个应用包含多个Activity • Android使用堆栈存放多个Activity对象,并自动进行管理 • Activity存在生命周期
res 目 录 结 构
1.1.3 res资源引用方法
当在程序中引用资源时需要使用R类,引用形式:R.资源类型.资源名称
例如,
(1)在Activity中显示布局视图,setContentView(yout.main); (2)程序要获得布局文件中的图片组件 ,img = (Image)finadViewById(R.id.img01); (3)程序要获得布局文件中的列表组件, list= (List)findViewById(R.id.alist);
• 2009年4月,谷歌正式推出了Android 1.5这款手机,从Android 1.5版本开始,谷歌开始将Android的版本以甜品的名字命名, Android 1.5命名为Cupcake(纸杯蛋糕)。该系统与Android 1.0 相比有了很大的改进。
Android发展史
• 2010年10月份,谷歌宣布Android系统达到了第一个里程碑,即 电子市场上获得官方数字认证的Android应用数量已经达到了10 万个,Android系统的应用增长非常迅速。在2010年12月,谷歌 正式发布了Android 2.3操作系统Gingerbread (姜饼)。
• Google以Apache免费开源许可证的授权方式,发布了Android的源代码。
什么是Android?
Android发展史
• 2008年,在GoogleI/O大会上,谷歌提出了AndroidHAL架构图, 在同年8月18号,Android获得了美国联邦通信委员会(FCC)的 批准,在2008年9月,谷歌正式发布了Android 1.0系统,这也是 Android系统最早的版本。
然后在对话框中输入应用程序名称 (Chap01)、包名等参数。并选择 Android SDK的版本。
1.1.2 Android项目结构
定义 打开Chap01项目,可以看到应用项目的目录和文件结构。
1 app模块下的文件目录结构:
manifests: 项目的配置信息文件。 java: 源代码和测试代码。 res: 资源目录,存储项目资源。
相关文档
最新文档