当前位置:
首页 > 教材教辅 > 中职/高职 > Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

本站仅展示书籍部分内容

如有任何咨询

请加微信10090337咨询

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

书名:Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

推荐语:

作者:张霞编

出版社:人民邮电出版社

出版时间:2019-08-01

书籍编号:30512943

ISBN:9787115446893

正文语种:中文

字数:260347

版次:1

所属分类:教材教辅-中职/高职

全书内容:

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载








内容提要


本书内容浅显易懂,可操作性强。全书共分9章,第1~7章详细介绍了Android Studio基础知识,包括Android UI设计、Activity与多个用户界面、多媒体播放与录制、广播与服务、数据存储、图像和动画、网络编程;第8、9章介绍了两个实践项目,帮助读者将基础知识融会贯通,并结合最新的Android技术做适度拓展。


为避免冗余,书中省略了一些简单的布局源代码,读者可以通过扫描二维码查看完整源代码。


本书可作为高职院校Android系列课程的教材,也可作为Android初学者的自学用书。

前言


生活与移动互联网已经变得形影不离,人们只需要轻轻点触指尖,就能随时随地获取想要的信息。移动互联网时代已经开启,它已成为全世界商业和科技创新发展的加速器,成为当今时代最大的机遇和挑战。Android系统是一个开放式的移动互联网操作系统,今天的Android已经成为应用最广泛的移动互联网平台。


本书内容浅显易懂,采用Android Studio IDE开发环境,通过典型应用实例来引导知识点,将相关知识融入实例之中。读者可以通过实例逐步掌握Android系统的开发,再通过实践项目来强化Android应用能力。


本书的主要内容及学习要求如表1所示,学时分配表如表2所示。

表1 本书主要内容及学习要求

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

续表

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

续表

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

表2 学时分配表(64学时)

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

第一部分(第1~7章)推荐64学时,第二部分(第8、9章)两个实践项目,可以安排1~2周的课程实训。本书提供实践项目的初始代码和完成后的完整代码,学生按照本书的指引完成关键步骤即可实现所有功能。


本书提供电子教案、全部实例的源代码等资源,读者可登录人邮教育社区(www.ryjiaoyu.com)下载。


由于编者水平和经验有限,书中难免有不妥和疏漏之处,恳请读者批评指正。如有任何意见或建议,请发邮件至E-mail: zhangxia@szpt.edu.cn。


编者


2019年6月

第1章 Android UI设计


学习目标


熟悉Android Studio开发工具


熟悉Android项目的创建


掌握常用UI布局


掌握常用界面组件


本章从创建一个Android新项目开始,一步一步展开Android的开发设计,通过15个案例重点介绍界面的布局设计及常用界面组件。


用户界面设计又称为UI(User Interface)设计,UI设计是本章的重点,图1-1展示了本章案例涉及的布局文件。通常一个项目需要多个界面,几乎每个界面都有对应的XML布局文件。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-1 本章案例涉及的布局文件

Android Studio的安装与配置参见本书的附件。


1.1 新建Android项目


1.1.1 Android Studio自动构建新项目


启动Android Studio,选择“Start a new Android Studio project”,如图1-2所示。然后在弹出的对话框中输入应用程序名称(Chap01)、包名等参数,并选择Android SDK的版本。新装环境的第一个项目的构建时间会比较长。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-2 Android Studio启动后的第一个界面

1.1.2 Android项目结构


打开Chap01项目,在项目资源管理器中可以看到应用项目的文件目录结构,如图1-3所示。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-3 应用项目的文件目录结构

1.app模块下的文件目录结构


manifests:项目的配置信息文件。


java:源代码和测试代码。


res:资源目录,用于存储项目所需的资源。


2.Gradle Scripts模块下的文件目录结构


该目录文件一般不用留意。Gradle是一种管理工具,抛弃了基于XML的各种烦琐配置,取而代之的是一种基于Groovy的领域专用语言(Domain Specified Language,DSL)。build.gradle文件内容简洁,提供了很多设置和属性的默认值。


3.资源目录res及其资源类型


res用于存放项目所需的声音、图片、用户界面等资源文件。res下的常用资源(如图片文件)一般会在R类中自动生成资源ID,封装在apk中。资源目录如表1-1所示,其中最重要的3个目录如下。


(1)drawable目录,存放图片资源。


(2)layout目录,存放用户界面布局文件。


(3)values目录,存放参数描述资源,都是XML文件,如字符串string.xml、颜色color.xml、数组arrays.xml。

表1-1 res下的常用资源目录

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

1.1.3 res资源引用方法


程序中引用资源时需要使用R类,其引用形式为:


R.资源类型.资源名称


例如:


(1)在Activity中显示布局视图


set Content View(R.layout.main);


该set方法引用布局文件main,生成指定布局的视图,并将其放置在屏幕上。布局视图生成后,布局包含的组件随之完成实例化,转换为Java程序的视图对象。


(2)Java程序要获得布局文件中的图片组件img


img = (Image)finad View By Id(R.id.img);


(3)Java程序要获得布局文件中的列表组件alist


alist = (List)find View By Id(R.id.alist);


1.1.4 AndroidManifest.xml项目配置文件


每个应用程序都需要项目配置文件AndroidManifest.xml,它位于应用程序的根目录main下面。该文件代码解释如表1-2所示。

表1-2 AndroidManifest.xml文件代码解释

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

1.1.5 Android应用程序架构分析


1.逻辑控制层与表现层


在Android应用程序中,逻辑控制层与表现层是分开设计的。逻辑控制层由Java应用程序实现,表现层由XML文档描述。


逻辑控制层与表现层的关系如图1-4所示。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-4 逻辑控制层与表现层的关系

2.Activity主程序介绍


Activity与布局文件的关联是非常重要的一个环节。要想让布局显示到屏幕上,首先要在控制文件Activity启动时把布局文件显示出来。Activity类中重写了onCreate()方法,每个Activity都要进行一些必要的初始化,而这些初始化就是通过调用父类的onCreate()函数来进行的。


图1-5所示的第10行代码关联了布局文件activity_main.xml。本章的案例都很简单,只要使控制文件MainActivity分别关联15个案例的布局文件即可分别完成测试。


编程中如果提示相关的类没有被导入,按下【Alt+Enter】组合键,Android Studio会自动导入缺失的类。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-5 Activity主程序介绍

1.2 Android布局管理


Android系统应用程序的设计模式采用MVC模式,即把应用程序分为业务模型层(Model)、表现层(View)、控制层(Control)。按照这种模式,界面布局为表现层;Activity控制程序为控制层,将应用程序的界面设计与功能控制设计分离,从而可以单独地修改用户界面。


Android系统的布局管理指的是在XML布局文件中设置组件的大小、间距、排列及对齐方式等。Android系统中常用的布局类型有LinearLayout、FrameLayout、TableLayout、RelativeLayout、GridLayout、ConstraintLayout。


1.2.1 布局文件的规范与重要属性


1.布局文件的规范


Android系统应用程序的XML布局文件有以下规范。


(1)应存放在res/layout目录,其扩展名为.xml。


(2)根节点通常是一个布局方式,在根节点内可以添加组件作为节点。


(3)根节点必须包含一个命名空间:


xmlns:android=http://schemas.android.com/apk/res/android


(4)如果要在Java程序中控制布局的组件,则必须为相应的组件定义一个ID,其定义格式为:


android:id=\"@id/<组件ID>\"


(5)文件名只能由小写英文字母、数字和下划线组成,并且只能以小写字母开头。


2.布局文件的重要属性


(1)设置组件大小的属性


wrap_content:根据组件内容的大小来决定组件的大小。


match_parent:使组件填充所在容器的所有空间。


(2)设置组件大小的单位


px(piexls,像素):即屏幕上的发光点。


dp(或dip)设备独立像素:一种支持多分辨率设备的抽象单位。


sp(scaled pixels,比例像素):设置字体大小。


(3)设置组件的对齐方式


对齐方式由 android:gravity 属性控制,其属性值有 top、bottom、left、right、center_horizontal、center_vertical等。


1.2.2 常见的布局方式


布局文件可以单独创建,创建时需要输入文件名,文件名的字母必须全部小写,然后选择布局类型。如图1-6所示,创建了一个新的线性布局文件,文件名是activity_second.xml。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-6 新建XML布局文件

1.线性布局


线性布局(LinearLayout)将组件按照水平或垂直方向排列。在XML布局文件中,由根元素LinearLayout来标识线性布局,由android:orientation属性来设置排列方向,其属性值有水平(horizontal)和垂直(vertical)两种。


(1)设置为水平方向:android:orientation=\"horizontal\"。


(2)设置为垂直方向:android:orientation=\"vertical\"。


【例1-1】线性布局应用示例。


设计一个有5个按钮的线性布局,其控件层级关系如图1-7所示。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-7 线性布局的控件层级关系

布局文件activity_main1.xml的源代码如下:

1. <?xml version=\"1.0\" encoding=\"utf-8\"?>


2. <Linear Layout xmlns:android=\"http://schemas.android.com/apk/res/android\"


3.   android:layout_width=\"fill_parent\"


4.   android:layout_height=\"fill_parent\"


5.   android:orientation=\"vertical\" >


6.   <Button


7.     android:id=\"@+id/m Button1\"


8.     android:layout_width=\"wrap_content\"


9.     android:layout_height=\"wrap_content\"


10.    android:text=\"1\" />


11.  <Button


12.    android:id=\"@+id/m Button2\"


13.    android:layout_width=\"wrap_content\"


14.    android:layout_height=\"wrap_content\"


15.    android:text=\"2\" />


16.  <Button


17.    android:id=\"@+id/m Button3\"


18.    android:layout_width=\"wrap_content\"


19.    android:layout_height=\"wrap_content\"


20.    android:text=\"3\" />


21.  <Button


22.    android:id=\"@+id/m Button4\"


23.    android:layout_width=\"wrap_content\"


24.    android:layout_height=\"wrap_content\"


25.    android:text=\"4\" />


26.  <Button


27.    android:id=\"@+id/m Button4\"


28.    android:layout_width=\"wrap_content\"


29.    android:layout_height=\"wrap_content\"


30.    android:text=\"5\" />


31. </Linear Layout>

程序运行结果如图1-8所示。


将代码中第5行的“android:orientation=\"vertical\"”(垂直方向的线性布局)更改为“android:orientation =\"horizontal\"”(水平方向的线性布局),则运行结果如图1-9所示。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-8 垂直方向线性布局示例结果

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-9 水平方向线性布局示例结果

这5个按钮改为水平方向排列后,有一个按钮“5”被挤到了界面以外。在布局设计时必须考虑屏幕的宽度,不然就会发生这种意外。


2.帧布局


帧布局(Frame Layout)是将组件放置到左上角位置,当添加多个组件时,后面的组件将遮盖之前的组件。在XML布局文件中,由根元素Frame Layout来标识帧布局。


【例1-2】帧布局应用示例。


将准备的图像文件mm11.jpg复制到drawable目录下,然后新建图1-10所示的布局。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-10 布局的控件层级关系和属性

布局文件activity_main2.xml的源代码如下:

<?xml version=\"1.0\" encoding=\"utf-8\"?>


<Frame Layout xmlns:android=\"http://schemas.android.com/apk/res/android\"


xmlns:app=\"http://schemas.android.com/apk/res-auto\"


android:layout_width=\"fill_parent\"


android:layout_height=\"match_parent\"


android:foreground=\"@drawable/logo\"


android:foreground Gravity=\"right|top\">


<TextView


android:id=\"@+id/txt\"


android:layout_width=\"350dp\"


android:layout_height=\"200dp\"


android:background=\"@color/color Accent\" />


<TextView


android:id=\"@+id/txt2\"


android:layout_width=\"250dp\"


android:layout_height=\"150dp\"


android:background=\"@color/color Primary\"


android:text=\"后添加的文本框\"


android:text Size=\"24sp\" />


</Frame Layout>

修改控制文件Main Activity.java的布局文件调用,这非常重要。


package com.example.chap01;

import android.os.Bundle;


import android.support.v7.app.App Compat Activity;


public class Main Activity extends App Compat Activity


{


@Override


public void onCreate(Bundle saved Instance State)


{


super.onCreate(saved Instance State);


set Content View(R.layout.activity_main2);// 修改布局文件调用


}


}

程序运行结果如图1-11所示,后添加的文本框组件遮挡了之前的图像。


3.表格布局


表格布局(Table Layout)是将页面划分成由行和列构成的单元格,由根元素Table Layout来标识。表格的行由<Table Row>…</Table Row>定义。组件放置时,由android:layout_column指定列序号。表格布局的3个常用属性如下。


(1)android:collapse Columns:设置需要被隐藏的列序号。


(2)android:shrink Columns:设置允许被收缩的列序号。


(3)android:stretch Columns:设置允许被拉伸的列序号。


【例1-3】表格布局应用示例。


设计一个3行4列的表格布局,如图1-12所示。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-11 帧布局示例结果

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-12 表格布局

将准备好的图像文件mmx.jpg复制到res\\drawable目录下。


布局文件activity_main3.xml的源代码如下:

<?xml version=\"1.0\" encoding=\"utf-8\"?>


<Table Layout xmlns:android=\"http://schemas.android.com/apk/res/android\"


xmlns:app=\"http://schemas.android.com/apk/res-auto\"


android:layout_width=\"fill_parent\"


android:layout_height=\"fill_parent\">


<Table Row>


<Image View


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


app:src Compat=\"@drawable/mmx\" />


<Image View


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


app:src Compat=\"@drawable/mmx\" />


</Table Row>


<Table Row>


<Image View


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


app:src Compat=\"@drawable/mmx\"


android:layout_column=\"1\"/>


<Image View


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


app:src Compat=\"@drawable/mmx\"


android:layout_column=\"2\"/>


</Table Row>


<Table Row>


<Image View


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


app:src Compat=\"@drawable/mmx\"


android:layout_column=\"3\"/>


</Table Row>


</Table Layout>

4.相对布局


相对布局(Relative Layout)是采用相对于其他组件的位置的布局方式。在相对布局中,通过指定ID关联其他组件,从而以右对齐、上对齐、下对齐或屏幕中央对齐等方式来排列组件。


在XML布局文件中,由根元素Relative Layout来标识相对布局。


【例1-4】应用相对布局设计一个图片和4个按钮,如图1-13所示。

Android应用开发案例教程(Android Studio版)pdf/doc/txt格式电子书下载

图1-13 相对布局

布局文件activity_main4.xml的源代码如下:

<?xml version=\"1.0\" encoding=\"utf-8\"?>


<Relative Layout xmlns:android=\"http://schemas.android.com/apk/res/android\"


xmlns:tools=\"http://schemas.android.com/tools\"


android:id=\"@+id/Relative Layout1\"


android:layout_width=\"match_parent\"


android:layout_height=\"match_parent\" >


<!-- 这个是在容器中央 -->


<Image View


android:id=\"@+id/img\"


android:layout_width=\"80dp\"


android:layout_height=\"80dp\"


android:layout_center In Parent=\"true\"


android:src=\"@drawable/abc\"


/>


<!-- 在图片的左边 -->


<Button


android:id=\"@+id/btn1\"


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


android:layout_to Left Of=\"@id/img\"


android:layout_center Vertical=\"true\"


android:text=\"左边\"


/>


<!-- 在图片的右边 -->


<Button


android:id=\"@+id/btn2\"


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


android:layout_to Right Of=\"@id/img\"


android:layout_center Vertical=\"true\"


android:text=\"右边\"


/>


<!-- 在图片的上面-->


<Button


android:id=\"@+id/btn3\"


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


android:layout_above=\"@id/img\"


android:layout_center Horizontal=\"true\"


android:text=\"上面\"


/>


<!-- 在图片的下面 -->


<Button


android:id=\"@+id/btn4\"


android:layout_width=\"wrap_content\"


android:layout_height=\"wrap_content\"


android:layout_below=\"@id/img\"


android:layout_center Horizontal=\"true\"


android:text=\"下面\"


/>


</Relative Layout>

5.网格布局


网格布局(Grid Layout)把设置区域划分为若干行和列的网格,网格中的一个组件可以占据多行或多列。应用网络布局的属性可以设置组件在网络中的大小和摆放方式。


网络布局的主要属性如下。


(1)alignment Mode:设置布局管理器的对齐方式。


(2)column Count:设置网格列的数量。


(3)row Count:设置网格行的数量。


(4)layout_column Span:设置组件占据的列数。


(5)layout_row Span:设置组件占据的行数。


常用的单元格属性如下。


(1)lay

....

本站仅展示书籍部分内容

如有任何咨询

请加微信10090337咨询

本站仅展示书籍部分内容
如有任何咨询

请加微信10090337咨询

再显示