第一章
一.什么是Android?
安卓(Android)是一种基于Linux的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发,其中包含操作系统,中间件和核心应用等。
二.Android的平台架构。
1、Application
最上层是面向用户的Application(应用程序),包括电话程序、联系人程序、浏览器、地图、Email等。
2、Application Framework
第二层是Application Framework,为开发人员提供访问核心组件所使用的API,包含了丰富的View组件、Content Providers(内容提供器)用来访问另一个应用程序的数据(如联系人),或者共享它们自己的数据、Resource Manager(资源管理器)提供对资源的访问(如本地字符串,图形,布局文件等)、Notification Manager(通知管理器)、Activity Manager(活动管理器)等。
3、Libraries
第三层是系统运行库,包含程序库和Android运行库。程序库中包含了一些C/C++库,通过应用框架为开发者提供服务,如:Libc(从BSD继承来的标准C系统函数库)、媒体库、SGL(2D图形引 擎)、3D libraries(基于OpenGL ES 1.0 APIs实现,可以使用硬件或软件3D加速)、SQLite(数据库引擎)等等。
4、Linux Kernel
最下面一层是Linux核心,Android的核心系统依赖于Linux内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型。 Android的 Linux kernel也不是GNU/Linux。Android将驱动程序移到userspace,使得Linux driver与Linux kernel分开。
三.搭建Android开发环境
1.下载JDK
下载安装——环境配置——用cmd检查是否安装成功
JDK在当初学习java的时候就已经安装过,所以这一步没有遇到什么问题。
2.下载安装SDK
SDK的安装用了老师给的安装包,也成功的进行了安装。
3.Android Studio
4模拟器的安装
第二章
一、Android studio真机测试
1.手机连接到电脑上
2.打开开发者模式,打开USB调试选项,选择传输文件选项
3.电脑下载手机助手,在Android studio调试窗口找到自己的手机进行运行。代码运行成功之后,就可以在电脑手机助手上看到运行结果。
二、Android studio自带模拟器安装
1.点击 +create virtual Device,选择你想要设置的模拟器,这里我们选择phone手机的。
2.选择手机型号,不同的手机型号对应不同的大小和分辨率。
3.选择好手机型号之后选择API的版本。
4.完成,运行即可。
三、安卓程序的结构
1.安卓一个项目就是一个project,一个项目中可以包含多个app,一个module对应一个app。做开发时,只需建一个project,之后只需要建module即可。
2.Android项目结构
(Android视图下)
manifests —— AndroidManifest.xml
配置文件,里面含有app的名称,版本号,过滤器(决定那个activity是入口)等,以及activity,一个activity就是一个页面。
java ——com.example ——MainActivity
Java文件,所有的事件,操作。
res——layout—— activity_main.xml
布局文件,负责界面设计。
可以在设计界面操作,也可以在代码界面。
res ——drawable
在旧版本里大部分情况下存放图片。
res —— mipmap
存放图片
(ps:总的来说,app图标(launcher icon) 必须放在mipmap目录中,并且最好准备不同分辨率的图片,否则缩放后可能导致失真;而应用内使用到的图片资源,放在drawable目录亦或是mipmap目录中是没有区别的,该准备多个分辨率的还是要准备多个分辨率,如果只想使用一份切图,那尽量将切图放在高密度的文件夹中。)
re——values
关于颜色的定义:colors.xml
关于字符串的定义:strings.xml
关于样式的定义:styles.xml
Project 视图下)
app/build/ app模块build编译输出的目录
app/build.gradle app模块的gradle编译文件
app/app.iml app模块的配置文件
app/proguard-rules.pro app模块proguard文件
build.gradle 项目的gradle编译文件
settings.gradle 定义项目包含哪些模块
gradlew 编译脚本,可以在命令行执行打包
local.properties 配置SDK/NDK
MyApplication.iml 项目的配置文件
External Libraries 项目依赖的Lib, 编译时自动下载的
四、Android UI设计
1..Android UI布局:布局管理器,listview列表视图,GridView网络视图。
2..Android中提供了7种布局管理器:帧布局管理器,水平线性布局管理器,垂直线性布局管理器,表格布局管理器,表格行布局管理器,网络布局管理器,相对布局管理器。
3..在一个Android应用程序中,用户界面通过view和viewgroup构造。Android中有很多种view和viewgroup,他们都继承自view类。
4..Android布局管理器可以很方便地控制各个组件的位置和大小,同时根据屏幕大小,管理容器内的控件,自动适配组件在手机屏幕中的位置。
第三章
一、帧布局管理器
1.FrameLayout(帧布局),这个布局直接在屏幕上开辟出一块空白的区域,当我们往里面添加控件的时候,会默认把他们放到这块区域的左上角,而这种布局方式却没有任何的定位方式,所以它应用的场景并不多;帧布局的大小由控件中最大的子控件决定,如果控件的大小一样大的话,那么同一时刻就只能看到最上面的那个组件!后续添加的控件会覆盖前一个!虽然默认会将控件放置在左上角,但是我们也可以通过layout_gravity属性,指定到其他的位置。
2.FrameLayout(帧布局)默认是按左上角(0,0)开始排布,在帧布局下的每一个控件都是以画面的形式进行呈现
最开始定义的控件出现在最下方,最后定义的控件出现在最上方,一般用于手机联系人的导航显示字母、帧动画等内容。
3.
<?xml version=\"1.0\" encoding=\"utf-8\"?><FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"android:layout_width=\"match_parent\"android:layout_height=\"match_parent\" ><TextViewandroid:layout_width=\"match_parent\"android:layout_height=\"match_parent\"android:background=\"#00ff00\"android:text=\"你好\"/><TextViewandroid:layout_width=\"match_parent\"android:layout_height=\"match_parent\"android:layout_margin=\"30dp\"android:background=\"#ff0000\"android:text=\"页面\"/></FrameLayout>
二、线性布局管理器
1.LinearLayout是Android控件中的线性布局控件,它包含的子控件将以横向(HORIZONTAL)或竖向(VERTICAL)的方式排列,按照相对位置来排列所有的子控件及引用的布局容器。超过边界时,某些控件将缺失或消失。因此一个垂直列表的每一行只会有一个控件或者是引用的布局容器。
2.LinearLayout线性布局的相关属性:
android:orientation |
布局方向:\”vertical\”垂直线性布局,\”horizontal\”水平线性布局 |
android:id |
为控件指定相应的ID |
android:text |
指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符 |
android:grivity |
指定控件的基本位置,比如说居中,居右等位置 |
android:textSize |
指定控件当中字体的大小 |
android:background |
指定该控件所使用的背景色,RGB命名法 |
android:width |
指定控件的宽度 |
android:height |
指定控件的高度 |
android:padding |
指定控件的内边距,也就是说控件当中的内容 |
android:singleLine |
如果设置为真的话,则将控件的内容在同一行当中进行显示 |
android:layout_weight |
默认值为0,layout_weight属性可以控制各个控件在布局中的相对大小,线性布局会根据该控件layout_weight值与其所处布局中所有控件layout_weight值之和的比值为该控件分配占用的区域。 |
3.用XML方式实现线性布局
<?xml version=\"1.0\" encoding=\"utf-8\"?><LinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"android:orientation=\"vertical\"android:layout_width=\"fill_parent\"android:layout_height=\"fill_parent\"android:background=\"@drawable/background\"><Button android:text=\"按钮1\" android:id=\"@+id/button1\"android:layout_width=\"match_parent\"android:layout_height=\"wrap_content\"/><Button android:text=\"按钮2\" android:id=\"@+id/button2\"android:layout_width=\"match_parent\"android:layout_height=\"wrap_content\"/>
4.用Java代码实现线性布局
public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);LinearLayout layout = new LinearLayout(this);// 创建现行布局管理器LinearLayout.LayoutParams params = new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT);// 设置线性布局参数layout.setOrientation(LinearLayout.VERTICAL);TextView txt = new TextView(this);LinearLayout.LayoutParams txtParams = new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT);// 设置组件参数txt.setLayoutParams(txtParams);//将文本组件添加到线性布局当中txt.setText(Hello!);//设置文件组件的文本txt.setTextSize(20);//设置文本大小layout.addView(txt, txtParams);addContentView(layout, params);}}
三、表格布局
1.TableLayout是采用表格的形式对控件的布局进行管理的,在TableLayout布局管理器之中,要使用TableRow进行表格的行控制,之后所有的组件要在TableRow中增加。
2.表格布局相关属性
android:collapseColumns |
设置指定的列为collapse,该列会被隐藏 |
android:shrinkColumns |
设置指定的列为shrinkable,该列的宽度进行收缩,自适应父类容器的大小 |
android:stretchColumns |
设置指定的列为stretch,该列会被拉伸,填充满表格的空白区域 |
四、相对布局
1.相对布局是通过相对定位的方式让控件出现在布局任意位置;在相对布局中如果不指定控件摆放的位置,那么控件都会被默认放在RelativeLayout的左上角。因此要先指定第一个控件的位置,再根据一个控件去给其他控件布局。
2.相对布局相关属性
android:layout_centerHrizontal |
水平居中 |
android:layout_centerVertical |
垂直居中 |
android:layout_centerInparent |
相对于父元素完全居中 |
android:layout_alignParentBottom |
位于父元素的下边缘 |
android:layout_below |
位于元素的下方 |
android:layout_alignTop |
该元素的上边缘和某元素的的上边缘对齐 |
android:layout_marginBottom |
底边缘的距离 |
五、列表视图
1.ListView(列表视图)是Android中常用的UI组件之一,它将以垂直列表的形式列出要显示的列表项目。一般来说ListView都是和Adapter(适配器)一起配合使用,数组数据或者数据库数据都将通过Adapter把值传递给ListView组件。
2.Adapter实际上是UI组件和数据源之间的一座桥梁,Adapter把数据从数据源中得到后将传递给Adapter View(适配器视图),Adapter View则将数据呈现在如Spinner(列表选择框)、ListView(列表视图)、GrideView(网格视图)等UI组件中。实际上ListView、GrideView是Adapter View的子类,他们通常和一个Adapter在一起使用,Adapter负责收集外部数据,然后再把数据项以View的形式显示在界面上。
3.Android提供了好几种类型的Adapter,他们都是Adapter的子类,常用的Adapter类型有:ArraryAdapter(数组适配器)、Base Adapter(基本适配器)、CursorAdapter(游标适配器)、SimpleCursorAdapter(简单游标适配器)、SpinnerAdapter(列表适配器)和WrapperListAdapter(封装列表适配器)。不同的适配器将用于绑定不同类型的数据,比如ArraryAdapter就适合绑定数组数据。
4.ListView(列表视图)的常用属
属性 |
描述 |
android:id |
用于设置ListView的名称 |
android:divider |
用于为ListView设置分割条,既可以用颜色分割,也可以用Drawable资源分割 |
android:dividerHeight |
用于设置分割条的高度 |
android:entries |
用于通过数组资源为ListView指定列表项 |
android:footerDividersEnabled |
用于设置是否在footerview之前绘制分割条,默认为true,设置为false时,表示不绘制。需要通过ListView(列表视图)提供的addFooterView()方法为ListView(列表视图)添加footerview |
六、网格视图
1.GridView(网格视图)是Android中常用的UI组件之一,它是按照行、列分布的方式来显示多个组件的,通常用于显示图片或图标等。
2.网格视图常用属性
属性 |
描述 |
android:id |
用于设置GridView的名称 |
android:columnWidth |
用于设置列的宽度 |
android:gravity |
用于设置对齐方式 |
android:horizontalSpacing |
用于设置各元素之间的水平间距 |
android:numColumns |
用于设置列数,其属性值通常大于1,如果值较大比如100或者为auto_fit,则将在可用空间中显示尽量多的列数。 |
android:stretchMode |
用于设置拉伸模式,其中属性可以为: none:不拉伸 spacingWidth:仅拉伸元素之间的间距 columnWidth:仅拉伸表格元素本身 spacingWidthUniform:表格元素本身、元素之间的间距一起拉伸 |
android:verticalSpacing |
用于设置各元素之间的垂直间距 |
第四章
一、文本框TextView
- 用于在屏幕中显示文本,可以输入单行文本,也可以输入多行文本,还可以输入指定格式的文本(密码、电话号码、E_mail地址等)。
- TextView常用属性
属性 |
描述 |
android:id |
用于设置文本框的名称 |
android:capitalize |
用于设置输入英文字母是否自动变为大写字母 l0表示不自动变为大写字母 l1表示一句话的首字母自动变为大写字母 l2表示每个单词的首字母自动变为大写字母 l3表示所有字母自动变为大写字母 |
android:cursorVisible |
当可以编辑时,光标是否显示 ltrue表示光标显示 lfalse表示光标不显示(默认值) |
android:editable |
如果设置为true,表示文本框可以进行编辑 |
android:fontFamily |
用于设置文本框的字体样式 |
android:gravity |
用于设置文本框的对齐方式,可选值有top、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical和clip_horizontal等。这些属性值也可以同时设定,各属性值之间用竖线隔开。例如要指定组件靠右下角对齐,可以使用属性值right|bottom |
android:hint |
用于设置当文本框中文本内容为空时,默认显示的提示文本 |
android:inputType |
用于指定当前文本框显示内容的文本类型,其可选值有textpassword、textEmailAddress、phone和date等,可以同时指定多个,使用“|”竖线隔开。 |
android:maxHeight |
用于设置文本框的最大高度 |
android:maxWidth |
用于设置文本框的最大宽度 |
android:minHeight |
用于设置文本框的最小高度 |
android:minWidth |
用于设置文本框的最小高度 |
android:password |
用于设置当文本框可以编辑时,里面的文本是否显示为隐藏密码样式“.”,显示为true,不显示为false |
android:phoneNumber |
用于设置当文本框可以编辑时,里面的文本是否显示为电话号码样式,显示为true,不显示为false |
android:text |
用于指定文本框中显示的文本内容 |
android:textAllCaps |
用于设置文本框中的英文字母是否全部变为大写字母,变成大写字母为true,不变成大写字母为false |
android:textColor |
用于设置文本框内文本的颜色,其属性值可以是\”#rgb\”、\”#argb\”、\”#rrggbb\”或\”#aarrggbb\” |
android:textColorHighlight |
用于设置文本框内文本的颜色是否高亮 |
android:textColorHint |
用于设置文本框提示信息的颜色,其属性值可以是\”#rgb\”、\”#argb\”、\”#rrggbb\”或\”#aarrggbb\” |
属性 |
描述 |
android:textIsSelectable |
用于设置当文本框不可以编辑时,文本框中的文字是否可以被选中,true为可以,false为不可以 |
android:textSize |
用于设置文本框中文本的字体大小,其属性由代表大小的数值和单位组成,其单位可以是px、pt、sp和in等 |
android:textStyle |
用于设置文本框中文本的样式,可以同时指定多个,使用“|”竖线隔开 l0表示正常 l1表示加粗 l2表示斜体 |
二、编辑框EditText
- 用于在屏幕中显示文本输入框,可以输入单行文本,也可以输入多行文本,还可以输入指定格式的文本(密码、电话号码、E_mail地址等)。
- 编辑框常用属性
属性 |
描述 |
android:autoText |
如果被选中表示对编辑框中的文本自动更正拼写错误 |
android:drawableBottom |
用于在编辑框内文本的底端绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:drawableRight |
用于在编辑框内文本的右侧绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:editable |
用于设置编辑框是否能被编辑,默认值为true |
android:text |
用于设置编辑框中默认显示的文本 |
android:background |
用于设置编辑框的背景图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:contentDescription |
用于设置编辑框的简单描述文字 |
android:id |
用于设置编辑框的名称 |
android:onClick |
用于设置单击事件响应方法的方法名 |
android:visibility |
用于设置编辑框是否可见 |
三、自动填充文本框AutoCompleteView
- AutoCompleteTextView(自动填充文本框)用于实现允许用户输入一定的字符后,显示一个下拉菜单,供用户从中选着,当用户选择某个选项后,按用户选择自动填写文本框。
- 自动填充文本框常用属性
属性 |
描述 |
android:completionHint |
用于为弹出的下拉菜单指定提示标题 |
android:completionHintView |
用于设置弹出的下拉菜单底部信息的样式 |
android:completionThreshold |
用于指定用户至少输入几个字符才会显示提示 |
android:dropDownAnchor |
它的值是一个View的ID,指定后AutoCompleteTextView会在这个View下弹出自动提示 |
android:dropDownHeight |
用于指定下拉菜单的高度 |
android:dropDownHorizontalOffset |
用于指定下拉菜单与文本之间的水平偏移。下拉菜单默认与文本框左对齐 |
android:dropDownSelector |
用于设置下拉菜单显示效果 |
android:dropDownVerticalOffset |
用于设置下拉菜单与文本之间的垂直偏移。下拉菜单默认紧跟文本框 |
android:dropDownWidth |
用于设置下拉菜单的宽度 |
android:popupBackground |
用于设置下拉菜单设置背景 |
四、普通按钮Button
1. Button(普通按钮)用于在UI界面上生成一个可以单击的按钮。当用户单击按钮时,将会触发一个onClick事件,可以通过为按钮添加的单击事件监听器指定所要触发的动作。
2.普通按钮属性
属性 |
描述 |
android:autoText |
如果被选中表示对按钮上显示的文本进行自动更正拼写错误 |
android:drawableBottom |
用于在按钮上显示文本的低端绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:drawableRight |
用于在按钮上显示文本的右侧绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:enabled |
用于设置按钮是否可用 |
android:text |
用于设置按钮上显示的文字 |
android:background |
用于设置按钮的背景图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:contentDescription |
用于设置按钮的简单描述文字 |
android:id |
用于设置按钮的名称 |
android:onClick |
用于设置单击事件响应方法的方法名 |
android:visibility |
用于设置按钮控件是否可见 |
五、图片按钮ImageButton
- 图片按钮和普通按钮的使用方法基本相同,只不过图片按钮有android:src属性,可以用来设置在按钮中显示的图片。与普通按钮一样,也需要为图片按钮添加单击事件监听器用于指定所要触发的动作。
- 图片按钮属性
属性 |
描述 |
android:adjustViewBounds |
如果设置为true,ImageButton将调整其边框以适应图片大小 |
android:baseline |
用于设置ImageButton的基线 |
android:baselineAlignBottom |
如果值为true表示图片的基线与按钮底部相对齐 |
android:cropToPadding |
如果值为true表示ImageButton会剪切图片以适应内边距的大小 |
android:src |
用于设置要显示的图片资源位置,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:background |
用于设置图片按钮的背景图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:contentDescription |
用于设置图片按钮的简单描述文字 |
android:id |
用于设置按钮的名称 |
android:onClick |
用于设置单击事件响应方法的方法名 |
android:visibility |
用于设置按钮控件是否可见 |
六、复选框checkbox
- 在Android中,单选按钮和复选框都继承于普通按钮,因此,它们都可以直接使用普通按钮支持的各种属性和方法,与普通按钮不同的是,他们提供了可选中的功能。 在默认情况下,CheckBox(复选框)显示为一个方框图标,并且在该图标旁边放置一些说明文字。CheckBox可以进行多选设置,每一个复选框都提供“选中”和“不选中”两种状态。
- 复选框属性
属性 |
描述 |
android:autoText |
如果被选中表示对复选框的说明文本自动更正拼写错误 |
android:drawableBottom |
用于在复选框的说明文本的低端绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:drawableRight |
用于在复选框的说明文本的右侧绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:editable |
用于设置复选框的说明文本是否能被编辑,默认值为true |
android:text |
用于设置复选框的默认说明文本 |
android:background |
用于设置复选框的背景图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:contentDescription |
用于设置复选框的简单描述文字 |
android:id |
用于设置复选框的名称 |
android:onClick |
用于设置单击事件响应方法的方法名 |
android:visibility |
用于设置复选框是否可见 |
七、开关按钮ToggleButton
- ToggleButton(开关按钮)是Android中比较简单的一个控件,具有选中和为选中两个状态的按钮,并且需要为不同的状态设置不同的显示文本,同时还有一个显示开/关的指示灯。
- 开关按钮的属性
属性 |
描述 |
android:disabledAlpha |
用于设置按钮在禁用时的透明度 |
android:textOff |
用于设置开关按钮未被选中时的说明文本 |
android:textOn |
用于设置开关按钮被选中时的说明文本 |
android:autoText |
如果被选中表示对开关按钮的说明文本自动更正拼写错误 |
android:drawableBottom |
用于在开关按钮的说明文本的低端绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:drawableRight |
用于在开关按钮的说明文本的右侧绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:editable |
用于设置开关按钮的说明文本是否能被编辑,默认值为true |
android:text |
用于设置开关按钮的默认说明文本 |
android:background |
用于设置开关按钮的背景图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:contentDescription |
用于设置开关按钮的简单描述文字 |
android:id |
用于设置开关按钮的名称 |
android:onClick |
用于设置单击事件响应方法的方法名 |
android:visibility |
用于设置开关按钮是否可见 |
八、单选按钮RadioButton
- 默认情况下,单选按钮显示为一个圆形图标,并且在该图标旁边放置一些说明文字,一般将多个单选按钮放置在RadioGroup(按钮组) 中,当用户选中其中某个RadioButton(单选按钮)后, RadioGroup(按钮组) 中其它按钮将被自动取消选中状态。
- 单选按钮基本属性
属性 |
描述 |
android:autoText |
如果被选中表示对单选按钮的说明文本自动更正拼写错误 |
android:drawableBottom |
用于在单选按钮的说明文本的低端绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:drawableRight |
用于在单选按钮的说明文本的右侧绘制指定图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:editable |
用于设置单选按钮的说明文本是否能被编辑,默认值为true |
android:text |
用于设置单选按钮的默认说明文本 |
android:background |
用于设置单选按钮的背景图片,该图片可以是放在res/drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置 |
android:contentDescription |
用于设置单选按钮的简单描述文字 |
android:id |
用于设置单选按钮的名称 |
android:onClick |
用于设置单击事件响应方法的方法名 |
android:visibility |
用于设置单选按钮是否可见 |
九、ProgressDialog(进度对话框)类创建ProgressBar(进度条)
1.当一个应用程序在后台执行时,前台界面不会有任何信息,这时用户不知道程序是否在执行以及执行进度等信息,因此需要使用进度条来提示程序执行的进度。例如,当你从互联网上传或下载文件的时候,上传/下载进度条将显示下载进度信息。
在Android中,可以使用ProgressDialog(进度对话框)类来创建ProgressBar(进度条)控件。
先用ProgressDialog类实例化一个对象来实现,语法如下:
ProgressDialog progress = new ProgressDialog(this);
然后再设置ProgressDialog类的属性,如下所示:
progress.setMessage(\”Downloading Music ! \”);
progress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progress.setIndeterminate(true);
2.进度条常用属性
方法 |
描述 |
getMax() |
此方法将返回进度的最大值 |
incrementProgressBy(int diff) |
此方法将设置增加的进度,每次推进的步伐 |
setIndeterminate(boolean indeterminate) |
此方法将设置进度条是否为不确定模式 |
setMax(int max) |
此方法将设置进度的最大值 |
setProgress(int value) |
此方法将设置进度条的当前进度值 |
show(Context context, CharSequence title, CharSequence message) |
这是一个静态方法,用于显示进度对话框 |
十、列表选项框
- Android中提供的Spinner(列表选择框)相当于在网页中常见的下拉列表框,通常用于提供一系列可选择的列表提供用户进行选择,从而方便用户。例如你使用电子邮件时,在菜单处你可以选择Reply(回复)、Reply all(回复全部)和Forward(转发)
十一、时间拾取器TimePicker
- 在Android中TimePicker(时间拾取器)是用于选择一天中时间的控件,在TimePicker中可以设置小时、分钟和AM/PM(上午/下午)。
2.时间拾取器属性
方法 |
描述 |
is24HourView() |
此方法将返回当前TimePicker是否以24小时显示的状态 |
isEnabled() |
此方法将返回当前TimePicker是否可用的状态 |
setCurrentHour(Integer currentHour) |
此方法将设置TimePicker中显示的当前小时数 |
setCurrentMinute(Integer currentMinute) |
此方法将设置TimePicker中显示的当前分钟数 |
setEnabled(boolean enabled) |
此方法将设置TimePicker是否可用 |
setIs24HourView(Boolean is24HourView) |
此方法将设置是否以24小时模式显示时间 |
setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener) |
此方法将用于监听事件改变时触发的事件 |
- 系统自带的文字外观设置:
android:attr/textAppearanceButton
android:attr/textAppearanceSmall
android:attr/textAppearanceMedium android:attr/textAppearanceLarge
android:attr/textAppearanceInverse
android:attr/textAppearanceSmallInverse
android:attr/textAppearanceMediumInverse android:attr/textAppearanceLargeInverse
十二、日期拾取器
- 在Android中,DatePicker(日期拾取器)是让用户在界面中选择日期的控件。在DatePicker由年、月、日三部分组成。Android提供DatePicker控件和调用DatePickerDialog(日期拾取器对话框)类两种方式以实现日期选取功能。
- 日期拾取器常用属性
方法 |
描述 |
getDayOfMonth() |
此方法将返回当前DatePicker中的天数值 |
getMonth() |
此方法将返回当前DatePicker中的月份值 |
getYear() |
此方法将返回当前DatePicker中的年 |
setMaxDate(long maxDate) |
此方法将设置DatePicker所支持的最大日期数 |
setMinDate(long minDate) |
此方法将设置DatePicker所支持的最小日期数 |
setSpinnersShown(boolean shown) |
此方法将设置DatePicker是否显示下拉选择框 |
getCalendarView() |
此方法将返回calendar view |
getFirstDayOfWeek() |
此方法将返回一周的第一天是星期几 |
updateDate(int year, int month, int dayOfMonth) |
此方法将通过参数更新DatePicker的现有时间 |