Microsoft Word - 扉页.doc

Size: px
Start display at page:

Download "Microsoft Word - 扉页.doc"

Transcription

1 第 3 章 Andro 常用基本控件 我们在进行界面布局时, 添加的按钮 文本框 编辑框和图片等, 都是 Andro 的基本控件 这些控件实现了程序的一些基本功能 本章将针对这类控件进行详细的介绍, 使读者掌握基本控件的使用, 开发出简单的 Andro 程序 3.1 文本控件概述 Andro 系统提供给用户已经封装好的界面控件称为系统控件 系统控件更有利于帮助用户进行快速开发, 同时能够使 Andro 系统中应用程序的界面保持一致性 控件属性 Andro 支持的基本控件有以下几种, 如图 3.1 所示 TextView 文本框 EditText 编辑框 Button 按钮 ImageView Button 按钮 Toggle Button 按钮 RadioButton 单选按钮 CheckBox 多选按钮 图 3.1 基本控件注意 : 由于篇幅有限, 图中所列并非 Andro 支持的所有基本控件 Andro 的控件, 一般是在 res/layout 下的布局文件中声明使用 声明的同时, 还要设置控件的属性, 控制其在界面中的显示效果 设置控件的属性有两种方法, 一种是在布局文件中设置参数, 另一种是在代码中调用对应方法实现 控件常用属性及其对应方法如表 3-1 所示

2 第 3 章 Andro 常用基本控件 表 3-1 控件常用属性及其对应方法 属性名称 对应方法 说 明 setid(int ) 设置该控件的 layout_wth setwth(int pixels) 设置该控件的宽度 layout_height setheight(int pixels) 设置该控件的高度 控件使用 在布局文件的 Graphical Layout 视图中有一个 Palette 面板 该面板中包含了 Andro 中的所有控件 我们在使用控件时, 可以直接拖动所需控件到右侧手机界面, 如图 3.2 所示, 添加了一个 Button 控件 也可以手动编辑代码添加控件 图 3.2 添加控件在布局文件中声明的控件, 只负责界面显示 如果要想使用控件实现某些具体功能, 就需要在 Activity 中编辑代码实现 实现过程如下 : (1) 使用 super.setcontentview(r.layout. 某布局 layout 文件名 ) 来加载布局文件 ; (2) 使用 super.findviewbyid(r.. 控件的 ID) 获取控件引用 ; (3) 使用这个引用对控件进行操作, 例如添加监听, 设置内容等 3.2 文本类控件 文本类控件主要用于在界面中显示文本, 包含 TextView 和 EditText 两种 下面我们将详细介绍 TextView TextView 是 Andro 程序开发中最常用的控件之一, 它一般使用在需要显示一些信息的时候, 它不能输入, 只能通过初始化设置或在程序中修改 TextView 常用属性及其对应方法如表 3-2 所示 37

3 第 1 篇 Andro 开发基础 表 3-2 TextView 常用属性及对应方法说明 属性名称对应方法说明 andro:autolink setautolinkmask(int) 设置是否将指定格式的文本转化为可点击的超链接显示 传入的参数值可取 ALL _ADDRESSES MAP_ADDRESSES PHONE_NUMBERS 和 WEB_URLS andro:height setheight(int) 定义 TextView 的准确高度, 以像素为单位 andro:wth setwth(int) 定义 TextView 的准确宽度, 以像素为单位 andro:singleline settransformationmethod(transfo rmationmethod) 设置文本内容只在一行内显示 andro:text settext(charsequence) 为 TextView 设置显示的文本内容 andro:textcolor settextcolor(colorstatelist) 设置 TextView 的文本颜色 andro:textsize settextsize(float) 设置 TextView 的文本大小 andro: textstyle settypeface(typeface) 设置 TextView 的文本字体 andro:ellipsize setellipsize(textutils.truncateat) TextView 文本字体属性示意图如图 3.3 所示 如果设置了该属性, 当 TextView 中要显示的内容超过了 TextView 的长度时, 会对内容进行省略, 可取的值有 start mdle end 和 marquee TextView 语法格式如下 : 图 3.3 TextView 文本字体属性示意图 <TextView <!-- TextView 边框包围内容 --> andro:layout_wth=" " andro:layout_height=" " <!-- TextView 准确高度宽度 --> andro:wth=" " andro:height=" " andro:text=" " <!-- 字体大小 --> andro:textsize=" " andro:textcolor=" " <!-- 字体格式 --> andro:textstyle=" " <!-- 文本显示位置 --> andro:gravity=" " <!-- 是否转为可点击的超链接形式 --> andro:autolink=" " <!-- 是否只在一行内显示全部内容 --> andro:singleline=" " andro:ellipsize=" "/> 示例 3-1 TextView 的使用 新建项目 TextView, 在布局中添加三个 TextView 第 38

4 第 3 章 Andro 常用基本控件 一个 TextView 的文本以 web 形式显示 第二个 TextView 的文本只进行一些字体设置, 第三个 TextView 的文本以省略尾部内容显示 26 个英文字母 运行程序, 效果如图 3.4 所示 布局代码如下 : <TextView andro:="@+/textview1" andro:text="@string/tv1" andro:textsize="20sp" andro:autolink="web" andro:singleline="true"/> <TextView andro:="@+/textview2" andro:layout_below="@+/textview1" andro:layout_margintop="20dp" andro:textsize="30sp" andro:textcolor="#0000ff" andro:textstyle="italic" andro:text="@string/tv2" /> <TextView andro:="@+/textview3" andro:layout_below="@+/textview2" andro:layout_margintop="20dp" andro:textsize="30sp" andro:singleline="true" andro:ellipsize="end" andro:text="@string/tv3" /> 图 3.4 TextView 控件 属 性 textsize 20sp TextView auto_link web singleline true text textsize 30sp TextView textcolor #0000ff textstyle italic text textsize 30sp TextView singleline true ellipsize end text abcdefghijklmnopqrstuvwxyz 39

5 第 1 篇 Andro 开发基础 EditText 我们在第一次使用一些应用软件时, 常常需要输入用户名和密码进行注册和登录 实现此功能, 就需要使用 Andro 系统中的编辑框 EditText EditText 也是一种文本控件, 除了 TextView 的一些属性外,EditText 还有一些特有的属性, 如表 3-3 所示 andro:lines 表 3-3 EditText 常用属性及对应方法说明 属性名称 对应方法 说 明 setlines(int) andro:maxlines setmaxlines(int) 设置最大的行数 andro:minlines setminlines(int) 设置最小的行数 andro:inputtype settransformationmethod(transfor mationmethod) 通过设置固定的行数来决定 EditText 的高度 设置文本框中的内容类型, 可以是密码 数字 电话号码等类型 andro:scrollhorizontally sethorizontallyscrolling(boolean) 设置文本框是否可以水平滚动 andro: capitalize setkeylistener(keylistener) 如果设置, 自动转换用户输入的内容为大写字母 andro: hint sethint(int) 文本为空时, 显示提示信息 andro:maxlength setfilters(inputfilter) 设置最大显示长度 Edittext 属性示意图如图 3.5 所示 40 EditText 语法格式如下 : <EditText <!-- 文本提示内容 --> andro:hint="" <!-- 文本内容显示在固定行中 --> andro:lines="" <!-- 文本最大显示长度 --> andro:maxlength=" " <!-- 文本显示类型 --> andro:inputtype=" " 图 3.5 Edittext 属性示意图 andro:scrollhorizontally=""/> 示例 3-2 EditText 的使用 新建项目 EditText, 在布局文件中添加三个 EditText

6 第 3 章 Andro 常用基本控件 第一个提示输入密码 ; 第二个输入电话号码 ; 第三个输入内容全部转为大写, 并限制文本长度 运行程序, 效果如图 3.6 所示 布局代码如下 : <EditText andro:="@+/edittext1" andro:layout_alignparenttop="true" andro:password="true" andro:hint=" 请输入密码 "> </EditText> <EditText andro:="@+/edittext2" andro:layout_below="@+/edittext1" andro:layout_margintop="26dp" andro:phonenumber="true" andro:lines="1" /> <EditText andro:="@+/edittext3" andro:layout_below="@+/edittext2" andro:layout_margintop="26dp" andro:maxlength="10" andro:scrollhorizontally="true" andro:capitalize="characters" /> 控件属性值 EditText hint password 请输入密码 true EditText EditText phonenumber true lines 1 maxlength 10 scrollhorizontally true capitalize characters 图 3.6 EditText 3.3 Button 类控件 Button 类控件主要包括 Button ImageButton ToggleButton RadioButton 和 CheckBox 下面我们将详细介绍 41

7 第 1 篇 Andro 开发基础 Button Button 是 Andro 程序开发过程中, 较为常用的一类控件 用户可以通过单击 Button 来触发一系列事件, 然后为 Button 注册监听器, 来实现 Button 的监听事件 为 Button 注册监听有两种方法, 一种是在布局文件中, 为 Button 控件设置 OnCilck 属性, 然后在代码中添加一个 public vo OnCilck 属性值 { 方法 ; 另一种是在代码中绑定匿名监听器, 并且重写 onclick 方法 下面我们通过例子来演示为 Button 注册监听 示例 3-3 新建项目 Button, 在布局中添加 Button1 和 Button2 在 Activity 中编辑代码为 Button1 注册监听, 单击 Button1, 修改界面标题 Button1 注册成功 ; 在布局文件中为 Button2 设置 OnClick 属性值注册监听, 单击 Button2, 修改界面标题 Button2 注册成功 布局文件代码 : 42 <Button andro:="@+/button1" andro:text="@string/button1" /> <Button andro:="@+/button2" andro:layout_margintop="60dp" <!-- 设置 OnClick 属性 --> andro:onclick="click" andro:text="@string/button2" /> 逻辑代码 : public class MainActivity extends Activity { // 声明 Button1 Button2 Button public vo oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); // 加载布局文件 setcontentview(r.layout.activity_main); // 获取 Button1 Button2 引用 button1 = (Button)findViewById(R..button1); button2 = (Button)findViewById(R..button2); // 为 Button1 注册监听 button1.setonclicklistener(new OnClickListener() { public vo onclick(view v) { // TODO Auto-generated method stub settitle("button1 注册成功 "); ); // 为 Button2 注册监听, 方法名为 OnClick 属性值 public vo click(view v) {

8 第 3 章 Andro 常用基本控件 settitle("button2 注册成功 "); 注意 :Button 控件的 OnClick 属性, 其参数值为在代码中添加的对应方法名, 因此在设置该参数值时, 需注意命名规范 程序执行过程如图 3.7 所示 运行程序, 效果如图 3.8 所示 图 3.7 程序执行流程图 êç ȼ êç ȼ 图 3.8 Button 监听 ImageButton ImageButton( 图片按钮 ) 也是一种 Button 它与 Button 控件类似, 只是在设置图片时有些区别 ImageButton 控件中, 设置按钮显示的图片可以通过 andro:src 属性, 也可以通 43

9 第 1 篇 Andro 开发基础 过 setimageresource(int) 方法来设置 ImageButton 语法格式如下 : <ImageButton <!-- ImageButton 按钮的 ID --> andro:=" " <!-- ImageButton 宽度和高度 --> andro:layout_wth=" " andro:layout_height=" " <!-- ImageButton 背景图片 --> andro:src=" " /> 示例 3-4 ImageButton 的使用 新建项目 ImageButton, 添加两个 ImageButton 控件 第一个使用 drawable 中的图片资源作为按钮背景, 第二个使用系统提供的图片作为按钮背景 运行程序, 效果如图 3.8 所示 布局代码如下 : <ImageButton andro:="@+/imagebutton1" andro:layout_alignparenttop="true" andro:src="@drawable/paint" /> <ImageButton andro:="@+/imagebutton2" andro:layout_below="@+/imagebutton1" andro:layout_margintop="42dp" andro:src="@andro:drawable/btn_minus" /> Drawable 图片 系统图片 控件属性值 ImageButton ImageButton 图 3.8 ImageButton 注意 : 在设置 src 属性时, 加载 Drawable 对象, 对象名 ; 加载系统提供的资源图片, 图片名 示例 3-5 下面演示一个单击 ImageButton, 改变其背景图片的案例 首先, 在 res/drawable-mdpi 目录下新建一个 myselector.xml, 在其中输入如下代码 : 44

10 第 3 章 Andro 常用基本控件 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:andro=" <!-- 未点击时显示背景 --> <item andro:state_pressed="false" andro:drawable="@drawable/ic_action_search" /> <!-- 点击时显示背景 --> <item andro:state_pressed="true" andro:drawable="@drawable/ic_launcher" /> </selector> 然后, 设置布局文件中,ImageButton 控件的 src 属性参数为 myselector.xml 的引用 : andro:src="@drawable/myselector" selector 是 Andro 控件的背景选择器, 采用 XML 文件格式 我们可以通过设置 item 项中的以下属性, 然后引用图片改变 ImageButton 显示背景 andro:state_selected: 选中 ; andro:state_focused: 获得焦点 ; andro:state_pressed: 点击 ; andro:state_enabled: 设置是否响应事件 运行程序, 效果如图 3.9 所示 未按下按钮 按下按钮 图 3.9 单击改变 ImageButton 背景图片 ToggleButton ToggleButton( 开关按钮 ) 是 Andro 系统中比较简单的一个组件, 它带有亮度指示, 具有选中和未选中两种状态 ( 默认为未选中状态 ), 并且需要为不同的状态设置不同的显示文本 ToggleButton 常用属性及对应方法如表 3-4 所示 表 3-4 ToggleButton 常用属性及对应方法说明 属性名称 对应方法 说 明 andro:disabledalpha 设置按钮在禁用时的透明度, 属性值必须 为浮点型 andro:textoff settextoff(charsequence textoff) 未选中时按钮的文本 andro:texton settexton(charsequence texton) 选中时按钮的文本 45

11 第 1 篇 Andro 开发基础 ToggleButton 语法格式如下 : <ToggleButton <!-- ToggleButton 按钮的 ID --> andro:=" " <!-- ToggleButton 被选中时显示的文本内容 --> andro:texton=" " <!-- ToggleButton 未被选中时显示的文本内容 --> andro:textoff=" "/> 示例 3-6 ToggleButton 的使用 新建项目 ToggleButton, 在布局文件中添加一个 ToggleButton 控件 设置其被选中时显示 开, 未被选中时显示 关 运行程序, 效果如图 3.10 所示 布局代码如下 : <ToggleButton andro:="@+/togglebutton1" andro:layout_wth="1500dp" andro:layout_height="80dp" andro:layout_alignparenttop="true" andro:texton=" 开 " andro:textoff=" 关 "/> 控件属性值 texton 开 ToggleButton textoff 关 图 3.10 ToggleButton RadioButton RadioButton( 单选按钮 ) 在 Andro 平台上也比较常用, 比如一些选择项会用到单选按钮 它是一种单个圆形单选框双状态的按钮, 可以选择或不选择 在 RadioButton 没有被选中时, 用户通过单击来选中它 但是, 在选中后, 无法通过单击取消选中 单选按钮由 RadioButton 和 RadioGroup 两部分组成 RadioGroup 是单选组合框, 用于将 RadioButton 框起来 在多个 RadioButton 被 RadioGroup 包含的情况下, 同一时刻只可以选择一个 RadioButton, 并用 setoncheckedchangelistener 来对 RadioGroup 进行监听 RadioButton 语法格式如下 : <RadioGroup <!-- RadioGroup 单选组合框的 ID --> 46

12 第 3 章 Andro 常用基本控件 andro:=" " <!-- RadioButton 排列方式 --> andro:orientation=" " > <RadioButton <!-- RadioButton 单选按钮的 ID --> andro:=" " <!-- RadioButton 文本内容 --> andro:text=" " /> </RadioGroup> 示例 3-7 RadioButton 的使用 新建项目 RadioButton, 在布局文件中添加一个 TextView 显示 请选择 : ; 添加一个 RadioGroup 控件, 设置 RadioButton 以垂直方式排列 ; 在 RadioGroup 控件中添加两个 RadioButton 控件, 分别显示 火车 和 飞机 ; 再添加一个 TextView 显示 您选择的是 : 在逻辑代码部分编辑代码, 当选中不同选项时, 在第二个 TextView 后追加显示选项内容 运行程序, 效果如图 3.11 所示 图 3.11 RadioButton 控件属性值 TextView RadioGroup Radiobutton Radiobutton text 请选择 orientation text text text 您选择的是 : 布局代码如下 : <TextView andro:="@+/tv1" andro:textsize="30sp" andro:text=" 请选择 :" /> <RadioGroup andro:="@+/rg1" andro:orientation="vertical" > <RadioButton andro:="@+/rb1" andro:textsize="30sp" andro:text=" 火车 " /> <RadioButton andro:="@+/rb2" andro:textsize="30sp" andro:text=" 飞机 " /> 47

13 第 1 篇 Andro 开发基础 </RadioGroup> <TextView andro:="@+/tv2" andro:textsize="30sp" andro:text=" 您选择的是 :" /> 关键逻辑代码 : // 为 RadioGroup 注册监听 radiogroup.setoncheckedchangelistener(new RadioGroup.OnCheckedChangeListener(){ public vo oncheckedchanged(radiogroup group, int checkedid){ // TODO Auto-generated method stub // 通过 判断第一个 RadioButton 被选中 if (checkedid == R..rb1) { // 显示第一个 RadioButton 内容 textview.settext(" 您选择的是 :" + radiobutton1.gettext()); // 第二个 RadioButton 被选中 else { // 显示第二个 RadioButton 内容 textview.settext(" 您选择的是 :" + radiobutton2.gettext()); ); CheckBox CheckBox( 复选按钮 ), 顾名思义是一种可以进行多选的按钮, 默认以矩形表示 与 RadioButton 相同, 它也有选中或者不选中双状态 我们可以先在布局文件中定义多选按钮, 然后对每一个多选按钮进行事件监听 setoncheckedchangelistener, 通过 ischecked 来判断选项是否被选中, 做出相应的事件响应 CheckBox 语法格式如下 : <CheckBox <!-- CheckBox 复选按钮 ID--> andro:=" " <!-- CheckBox 文本内容 --> andro:text=" " /> 示例 3-8 CheckBox 的使用 新建项目 CheckBox, 在布局文件中添加一个 TextView 显示 请选择 ; 添加三个 CheckBox 控件, 分别显示 火车 飞机 和 轮船 ; 再添加一个 TextView 显示 您选择的是 : 在逻辑代码部分编辑代码, 当选中不同选项时, 在第二个 TextView 后追加显示选项内容 运行程序, 效果如图 3.12 所示 布局代码如下 : <TextView andro:="@+/textview1" andro:layout_wth="121dp" andro:textsize="25sp" andro:text=" 请选择 " /> <CheckBox andro:="@+/checkbox1" 48

14 第 3 章 Andro 常用基本控件 andro:textsize="25sp" andro:text=" 火车 " /> <CheckBox andro:="@+/checkbox2" andro:textsize="25sp" andro:text=" 飞机 " /> <CheckBox andro:="@+/checkbox3" andro:textsize="25sp" andro:text=" 轮船 " /> <TextView andro:="@+/textview2" andro:textsize="25sp" andro:text=" 您选择的是 :" /> 图 3.12 CheckBox 控件 属 性 值 text 请选择 text 火车 text 飞机 text 轮船 text 您选择的是 : 关键逻辑代码 : // 为第一个 CheckBox 注册监听 checkbox1.setoncheckedchangelistener(new OnCheckedChangeListener() { public vo oncheckedchanged(compoundbutton buttonview, boolean ischecked){ // 如果第一个 CheckBox 被选中 if (ischecked == true) { // 显示第一个 CheckBox 内容 textview.append(checkbox1.gettext() + ","); ); // 为第二个 CheckBox 注册监听 checkbox2.setoncheckedchangelistener(new OnCheckedChangeListener() { // 如果第二个 CheckBox 被选中 49

15 第 1 篇 Andro 开发基础 public vo oncheckedchanged(compoundbutton buttonview, boolean ischecked) { if (ischecked == true) { // 显示第二个 CheckBox 内容 textview.append(checkbox2.gettext() + ","); ); // 为第三个 CheckBox 注册监听 checkbox3.setoncheckedchangelistener(new OnCheckedChangeListener() { public vo oncheckedchanged(compoundbutton buttonview, boolean ischecked) { // 如果第三个 CheckBox 被选中 if (ischecked == true) { // 显示第三个 CheckBox 内容 textview.append(checkbox3.gettext() + ","); ); 3.4 图片控件 ImageView ImageView 是一个图片控件, 负责显示图片 图片的来源可以是系统提供的资源文件, 也可以是 Drawable 对象 ImageView 常用的属性及其对应方法如表 3-5 所示 表 3-5 ImageView 常用属性及对应方法说明 属性名称对应方法说明 andro:adjustviewbounds setadjustviewbounds(boolean) 设置是否需要 ImageView 调整自己的边界来保证所显示的图片的长宽比例 andro:maxheight setmaxheight(int) ImageView 的最大高度, 可选 andro:maxwth setmaxwth(int) ImageView 的最大宽度, 可选 andro:scaletype setscaletype(imageview.scaletype) 控制图片应如何调整或移动来适合 ImageView 的尺寸 andro:src setimageresource(int) 设置 ImageView 要显示的图片 ImageView 语法格式如下 : <ImageView <!-- ImageView 图片控件 ID--> andro:=" " <!-- 是否保持长宽比 --> andro:adjustviewbounds=" " <!-- ImageView 最大高度和最大宽度 --> andro:maxheight=" " andro:maxwth=" " <!-- 是否调整图片适应 ImageView--> andro:scaletype=" " andro:src=" " /> 示例 3-9 ImageView 的使用 新建项目 ImageView, 在布局文件中添加两个 50

16 第 3 章 Andro 常用基本控件 ImageView, 第一个显示系统图片, 第二个显示 drawable 图片 运行程序, 效果如图 3.13 所示 布局代码如下 : <ImageView andro:="@+/imageview1" andro:layout_alignparenttop="true" andro:src="@andro:drawable/btn_star" /> <ImageView andro:="@+/imageview2" andro:layout_below="@+/imageview1" andro:layout_margintop="74dp" andro:adjustviewbounds="true" andro:maxheight="300dp" andro:maxwth="300dp" andro:scaletype="fitxy" andro:src="@drawable/paint" /> 控件属性值 系统图片 @+/imageview2 drawable 图片 ImageView src adjustviewbounds true fitxy maxheight 300dp maxwth 300dp 图 3.13 ImageView 3.5 时钟控件 时钟控件包括 AnalogClock 和 DigtialClock, 这两种控件都负责显示时间 不同的是, AnalogClock 是模拟时钟, 只显示时针和分针 ; 而 DigtialClock 显示数字时钟, 可精确到秒 两者可以结合使用, 能更准确的表达时间 示例 3-10 结合使用 AnalogClock 和 DigtialClock 新建项目 Clock, 在布局文件中添加一个 AnalogClock 控件和一个 DigtialClock 控件, 显示系统时间 运行程序, 效果如图 3.14 所示 51

17 第 1 篇 Andro 开发基础 AnalogClock DigtialClock 图 3.14 AnalogClock 和 DigtialClock 结合使用 3.6 日期与时间控件 Andro 为用户提供了显示日期与时间的控件 DatePicker 和 TimePicker, 下面我们将详细介绍 DatePicker 日期选择控件 (DatePicker) 主要的功能向用户提供包含了年 月 日的日期数据, 并允许用户对其进行选择 DatePicker 相关属性如表 3-6 所示 属性名称 calendarviewshown maxdate mindate spinnersshown 表 3-6 DatePicker 相关属性属性说明是否显示日历视图日历视图显示的最大日期, 格式为 mm/dd/yyyy 日历视图显示的最小日期, 格式为 mm/dd/yyyy 是否显示微调控件 52 DatePicker 语法格式如下 : <DatePicker <!-- DatePicker ID-- > andro:=" " <!-- 是否显示日历视图 --> andro:calendarviewshown=" " <!-- 日历视图显示的最小日期和最大日期, 格式为 mm/dd/yyyy-- > andro:mindate=" " andro:maxdate=" " <!-- 是否调整图片适应 ImageView--> andro:spinnersshown=" "/> 示例 3-11 DatePicker 的使用 新建项目 DatePicker, 在布局文件中添加一个 DatePicker 显示系统日期 设置其显示日历视图和微调控件, 并设定日历视图显示的最大日期和最小日期 运行程序, 效果如图 3.15 所示 使用微调控件, 可以修改日期

18 第 3 章 Andro 常用基本控件 布局代码如下 : <DatePicker andro:="@+/datepicker1" andro:layout_alignparenttop="true" andro:mindate=" " andro:maxdate=" "/> z 控件 属 性 calendarviewshown true DatePicker maxdate mindate spinnersshown true ï 图 3.15 DatePicker 如果将上述布局文件中 DatePicker 的 andro:spinnersshown 属性设置为 false, 就只显示日历视图, 如图 3.16 所示 图 3.16 只显示日历视图 TimePicker 时间选择控件 (TimePicker) 向用户显示一天中的时间 ( 可以为 24 小时制, 也可以为 AM/PM 制 ), 并允许用户进行修改 示例 3-12 TimePicker 的使用 新建项目 TimePicker, 在布局文件中添加一个 TimePicker, 以 AM/PM 制显示系统时间 运行程序, 效果如图 3.17 所示 示例 3-13 在 TimePickerActivity 中添加代码, 使用 TimePicker 以 24 小时制显示 53

19 系统时间 运行程序, 效果如图 3.18 所示 第 1 篇 Andro 开发基础 图 3.17 AM/PM 制 TimePicker 图 小时制 TimePicker 关键代码如下 : <!-- 设置 TimePicker 为 24 小时制 -- > timepicker.setis24hourview(true); <!-- 设置为 14 时 -- > timepicker.setcurrenthour(14); <!-- 设置为 40 分 --> timepicker.setcurrentminute(40); 3.7 小结 本章主要介绍了 Andro 中一些常用的 比较简单的控件 其中,Button 类控件需要注册监听, 实现具体功能, 需要读者认真学习掌握 掌握这些控件的用法, 并结合上一章的布局知识, 就能够开发出简单的用户界面 3.8 习题 1. 新建项目 EditText, 在布局中添加两个 EditText 第一个显示为密码格式, 在未输入密码时, 显示文本 请输入密码 ; 第二个显示电话号码, 输入电话号码时, 界面弹出拨号盘 程序运行效果如图 3.19 所示 图 3.19 EditText 54

20 第 3 章 Andro 常用基本控件 分析 本题目主要考查读者对 EditText 的掌握 可以参考 节的开发程序 核心代码 本题的核心代码如下所示 <EditText andro:="@+/edittext1" andro:layout_alignparenttop="true" andro:inputtype="textpassword" andro:hint=" 请输入密码 "> </EditText> <EditText andro:="@+/edittext2" andro:layout_below="@+/edittext1" andro:layout_margintop="26dp" andro:maxlength="11" andro:inputtype="phone" andro:lines="1" /> 2. 新建项目 Button, 在布局中添加两个按钮 Button1 在代码中绑定监听, 修改标题内容为 Button1 注册成功 ;Button2 在布局中通过 onclick 属性绑定监听, 修改标题内容为 Button2 注册成功 程序运行效果如图 3.20 所示 图 3.20 Button 注册监听 分析 本题目主要考查读者对 Button 两种注册监听方式的掌握 可以参考 节的内容 核心代码 本题的核心代码如下所示 布局文件代码 : <Button andro:="@+/button1" andro:text="button1" /> <Button andro:="@+/button2" 55

res/layout 目录下的 main.xml 源码 : <?xml version="1.0" encoding="utf 8"?> <TabHost android:layout_height="fill_parent" xml

res/layout 目录下的 main.xml 源码 : <?xml version=1.0 encoding=utf 8?> <TabHost android:layout_height=fill_parent xml 拓展训练 1- 界面布局 1. 界面布局的重要性做应用程序, 界面是最基本的 Andorid 的界面, 需要写在 res/layout 的 xml 里面, 一般情况下一个 xml 对应一个界面 Android 界面布局有点像写 html( 连注释代码的方式都一样 ), 要先给 Android 定框架, 然后再在框架里面放控件,Android 提供了几种框架,AbsoluteLayout,LinearLayout,

More information

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new ListView 自訂排版 主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new int[]{r.drawable.dog1, R.drawable.dog2,

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 按钮对象 (button) 当 JavaScript 读到 标记中的 type 属性值为 button 时, 自动建立一个按钮对象, 并将该对象放到表单对象的 elements 数组当中 按钮对象包括 : 普通按钮 (button) 提交按钮 (submit) 重置按钮 (reset) 1. 使用按钮对象的格式 document.forms[ 索引值 ].elements[ 索引值

More information

The Embedded computing platform

The Embedded computing platform Android User Interfaces Hsiao-Lung Chan, Ph.D. Dept Electrical Engineering Chang Gung University, Taiwan chanhl@maili.cgu.edu.tw Basic control components Text components TextView EditText Button compoents

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

Dynamic Layout in Android

Dynamic Layout in Android Dynamic Layout in Android 建國科技大學資管系 饒瑞佶 2013/5 V1 Layout 多半都透過 res/layout/xml 格式設定來達成 Android 是 OOP, 所以可以動態產生 Layout 重點是 Layout 的階層關係 (Hierarchy) 需要處理對應事件 最後一樣用 setcontentview 加入 Layout 一 加入現有 Layout 中

More information

Android Service

Android Service Android Service- 播放音樂 建國科技大學資管系 饒瑞佶 2013/7 V1 Android Service Service 是跟 Activity 並行 一個音樂播放程式若沒使用 Service, 即使按 home 鍵畫面離開之後, 音樂還是照播 如果再執行一次程式, 新撥放的音樂會跟先前撥放的一起撥, 最後程式就會出錯 執行中的程式完全看不到! 但是, 寫成 Service 就不同了

More information

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例 帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例 这篇文章主要介绍了帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例, 本文还详细介绍了帝国 CMS 数据库类中的一些常用方法, 需要的朋友可以参考下 例 1: 连接 MYSQL 数据库例子 (a.php)

More information

í í í é é é è è í í í é é í é è è í è í í è í é í í è é è é è è é é é í è è

More information

IsPostBack 2

IsPostBack 2 5 IsPostBack 2 TextBox 3 TextBox TextBox 4 TextBox TextBox 1 2 5 TextBox Columns MaxLength ReadOnly Rows Text TextMode TextMode MultiLine TextMode MultiLine True False TextMode MultiLine Password MulitLine

More information

Microsoft Word - 第5章.doc

Microsoft Word - 第5章.doc 第 5 课 Android 基 础 控 件 详 解 Android 应 用 程 序 的 人 机 交 互 界 面 有 很 多 Android 控 件 组 成 几 乎 所 有 的 Android 都 会 涉 及 到 控 件 技 术, 如 文 本 框 编 辑 框 按 钮 列 表 等 控 件 这 些 在 Android 应 用 程 序 中 随 处 可 见, 本 课 将 对 Android 提 供 的 基 础

More information

预览图 : (2) 在 SelectCity.java 中增加控件, 用于绑定 select_city 文件的 ListView, TextView,EditTest 等控件 代码和注释如下 :

预览图 : (2) 在 SelectCity.java 中增加控件, 用于绑定 select_city 文件的 ListView, TextView,EditTest 等控件 代码和注释如下 : EditText 实现城市搜索 1801210778 邹宇航 摘要 : 使用 EditText 实现搜索城市的功能, 以此为依据更新 ListView 1. 效果图 : 2. 主要步骤 (1) 在 select-city.xml 布局文件中中添加 EditText 控件用作搜索框, 然后添加 ListView 控件用来显示城市名字内容 代码如下 : 预览图 : (2) 在 SelectCity.java

More information

01_Service

01_Service 移动平台应用软件开发 Service 主讲 : 张齐勋 zhangqx@ss.pku.edu.cn 移动平台应用软件开发 课程建设小组 北京大学 二零一七年 什么是 Service 与 Activity 一样, 同属 Android 基本组件 后台运行, 不与用户交互, 没有可视化界面 最常见的 Service 如 : 在后台播放歌曲 后台执行文件的下载 同样需在 AndroidManifest.xml

More information

untitled

untitled 1 .NET 利 [] [] 來 說 切 切 理 [] [ ] 來 說 拉 類 類 [] [ ] 列 連 Web 行流 來 了 不 不 不 流 立 行 Page 類 Load 理 Response 類 Write 料 Redirect URL Response.Write("!! ives!!"); Response.Redirect("WebForm2.aspx"); (1) (2) Web Form

More information

Android 开发教程

Android 开发教程 封面 1 GUI 可视化设计器 DroidDraw DroidDraw 是一个基于 Java Swing 的 Android 界面设计器, 可以通过它来生成复杂的 Android Layout XML 文 件,Android 的 Layout 和 Swing Layout 中有很好的对应, 设计器的代码编写起来比较容易 2 AnDroidDraw AnDroidDraw 是一个与 DroidDraw

More information

Android 编程基础 Android 开发教程 & 笔记 1

Android 编程基础 Android 开发教程 & 笔记 1 Android 开发教程 & 笔记 1 多式样 ProgressBar 撰写 : 地狱怒兽 联系 :zyf19870302@126.com 普通圆形 ProgressBar 该类型进度条也就是一个表示运转的过程, 例如发送短信, 连接网络等等, 表示一个过程正 在执行中 一般只要在 XML 布局中定义就可以了

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 第 3 章 Android 控件进阶 要设计出让用户喜欢的 Android 应用程序界面, 除了需要用到在第 2 章讲的最基本的 TextView EditText 和 Button 控件外, 还要用到其他控件, 如 ImageButton 控件 ImageView 控件 RadioButton 控件 CheckBox 控件和 ListView 控件等 本章主要讲解功能强大 应用广泛的一些控件 3.1

More information

1988 11 20 1 ( ) ( ) ( ) ( ) 2 ( ) (, ) 3 ( ) ( ) ( ) ( ) ò ò ó í è

More information

Microsoft Word - Android 7.x.doc

Microsoft Word - Android 7.x.doc 第 4 章 Android GUI 开发 Android 系统提供了丰富的可视化界面组件, 包括菜单 按钮 对话框等 Android 系统采用 Java 程序设计中的 UI 设计思想, 其中包括事件处理机制及布局管理方式 Android 系统中的所有 UI 类都是建立在 View 和 ViewGroup 两个类的基础之上的, 所有 View 的子类称为 Widget, 所有 ViewGroup 的子类称为

More information

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple halcon 与 C# 混合编程之 Halcon 代码调用 写在前面 完成 halcon 与 C# 混合编程的环境配置后, 进行界面布局设计构思每一个按钮所需要实现 的功能, 将 Halcon 导出的代码复制至相应的 C# 模块下即可 halcon 源程序 : dev_open_window(0, 0, 512, 512, 'black', WindowHandle) read_image (Image,

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 第 章.1 Android UI 基本概念 用户界面 (User Interface,UI) 是用户与设备之间进行信息交流的直接媒介, 是决定用户体验最重要的部分 相比于早期的计算机的主要交互界面 批处理界面和命令行界面, 现在更为流行的是更简单直接的用户图形界面 (Graphical User Interface, GUI) GUI 简单易用, 受众面广, 直接推动了个人计算机的发展 目前, 主流大众的操作系统都采用了

More information

Microsoft Word - 第4章 3D相册.doc

Microsoft Word - 第4章 3D相册.doc 第 4 章 3D 相册 学习目标 u 掌握相册界面的开发, 实现相册的立体与倒影效果 在现实生活中, 我们浏览照片时, 不同的相册软件有不同的浏览效果 本章主要实现了一个 3D 效果的相册, 该相册中的图片可以循环滑动展示 4.1 3D 相册 任务综述 相册界面主要是展示一组图片的立体效果, 并显示每个图片的倒影, 左右滑动可以切换不同的图片到 界面的中间位置, 同时在图片下方显示当前图片的标题,

More information

付宝容器 jsapi 档 册 PDF 版本 本版本为实验版本, 为线下独 查看使, 受制于 成 PDF 程序的限制, 样式问题还没有很好的解决, 例如分 切图 代码 亮 推荐使 在线版本, 便实时查看 jsapi 运 效果 如需搜索, 使 阅读 PDF 软件 带功能即可 更多细节样式调整和 录索引探

付宝容器 jsapi 档 册 PDF 版本 本版本为实验版本, 为线下独 查看使, 受制于 成 PDF 程序的限制, 样式问题还没有很好的解决, 例如分 切图 代码 亮 推荐使 在线版本, 便实时查看 jsapi 运 效果 如需搜索, 使 阅读 PDF 软件 带功能即可 更多细节样式调整和 录索引探 付宝容器 jsapi 档 册 PDF 版本 本版本为实验版本, 为线下独 查看使, 受制于 成 PDF 程序的限制, 样式问题还没有很好的解决, 例如分 切图 代码 亮 推荐使 在线版本, 便实时查看 jsapi 运 效果 如需搜索, 使 阅读 PDF 软件 带功能即可 更多细节样式调整和 录索引探索建设中 成时间 : 2017-07-20 12:13:21 Since 8.6 定义键盘 定义键盘使

More information

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464> 第 1 章 进入 Photoshop 的全新世界 本章导读 Photoshop 1 1.1 Photoshop CS6 Photoshop Photoshop 1.1.1 Photoshop POP 1-1 图 1-1 平面广告效果 1.1.2 Photoshop 1-2 Photoshop CS6 Photoshop CS6 Photoshop CS6 Extended 3D 3 Photoshop

More information

Android Fragment

Android Fragment Android Fragment 建國科技大學資管系饒瑞佶 2017/10 V1 Android 3.0 後才支援 Fragment 解決部分 App 適應螢幕大小的問題 它類似於 Activity, 可以像 Activity 可以擁有自己的版面設計, 也和 Activity 一樣有自己的生命週期 ( 具備 oncreate() oncreateview() 與 onpause() 方法 ) LifeCycle

More information

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e Android Studio Debugging 本篇教學除了最基本的中斷點教學之外, 還有條件式中斷的教學 條件式中斷是進階的除錯技巧, 在某些特定情況中, 我們有一個函數可能會被呼叫數次, 但是我們只希望在某種條件成立時才進行中斷, 進而觀察變數的狀態 而條件式中斷這項技巧正是符合這項需求 本教學分兩部分 單步除錯 (Page2~11, 共 10) 條件式中斷點 (Page12~17, 共 6)

More information

Microsoft Word 杨超-spinner实现省市县的三级联动.docx

Microsoft Word 杨超-spinner实现省市县的三级联动.docx Spinner 实现省市县的三级联动 1801210908- 杨超 下拉框 Spinner 控件 : 常用属性 属性 说明 android:prompt 下拉提示信息 android:spinnermode 下拉显示方法 android:entries 配置下拉框数据源 android:dropdownwidth 下拉框显示模式下的显示项宽度 常用方法 方法 说明 getdropdownwidth()

More information

92

92 92 1 5 511 111 112 87 89 1987 4 1983 161 162 1980 158 7 9 161 1988 2 26 19 21 12 13 150 1988 114 105 56 1985 1983 1955 1980 1988 9 30 32 28 29 1990 5 163 165 7 9 43 48 227

More information

2 1972 448 1908 26 4 3 33 32 1914 1918 75 4 186 37 322 37 322 1900 3 13 1881 1970 1912 1917 29 114 32 385 42 182 20 36 375 36 291 39 33 39 266 267 39

More information

2 1972 448 1908 26 4 3 33 32 1914 1918 75 4 186 37 322 37 322 1900 3 13 1881 1970 1912 1917 29 114 32 385 42 182 20 36 375 36 291 39 33 39 266 267 39

More information

1953 6 32 4 4 1987 7 25 33 7 32 4 28 1 12 1 30 20 17 26 7 19 1951 7 21 70 30 40 6 20 9 1954 1 1951 34 1958 1 146 146 1957 1958 1961 1958 1960 104 3 727 3 761 3 727

More information

01 02 279 283 1961 1 121 147 1956 12 1 24 1844 92 612 1857 1858 472 1857 1858 484 517 518 518 1934 1952 1962 1 2829 1961 7 1 195 1961 6 1 1934 1952 191 1962 8 1 1985 8 24 1986 5 24 174 178 1985

More information

1 2 3 4 5 6 7 8 9 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71

More information

「西醫基層總額支付委員會《第28次委員會議紀錄

「西醫基層總額支付委員會《第28次委員會議紀錄 西 醫 基 層 總 額 支 付 委 員 會 101 年 第 2 次 委 員 會 議 紀 錄 時 間 :101 年 5 月 23 日 下 午 2 時 地 點 : 中 央 健 康 保 險 局 18 樓 會 議 室 ( 台 北 市 信 義 路 3 段 140 號 18 樓 ) 主 席 : 黃 召 集 人 三 桂 出 席 委 員 : 王 委 員 正 坤 王 委 員 錦 基 古 委 員 博 仁 王 正 坤 王

More information

寻医问药指南(十七)

寻医问药指南(十七) ... 1... 1... 49... 120... 131... 131... 146... 171... 180... 181... 181 I 518105 0755-7713177 0755-2425239 0755-2263882 1 0755-2409255 518102 0755-7799045 518002 0755-2220607 2 518101 0755-7788068 518101

More information

<4D F736F F D B3CCD0F2C9E8BCC6A1AAA1AA E4E4554C9CFBBFACAB5D1E9D6B8B5BCA3A8B5DA33B0E6A3A9CEA2BFCEB0E620CAB5D1E9352E646

<4D F736F F D B3CCD0F2C9E8BCC6A1AAA1AA E4E4554C9CFBBFACAB5D1E9D6B8B5BCA3A8B5DA33B0E6A3A9CEA2BFCEB0E620CAB5D1E9352E646 实验 7 ASP.NET 窗体验证 一 实验目的 (1) 理解客户端和服务器端验证 (2) 掌握 ASP.NET 各验证控件的使用 (3) 掌握分组验证的方法 二 实验内容及要求 1. 设计并实现一个带验证控件的用户注册页面要求如下 : (1) 页面浏览效果如图 5-1 和图 5-2 所示 (2) 用户名 密码 确认密码 生日 电话号码 和 身份证号 等信息必须输入 (3) 密码 和 确认密码 的输入值必须一致

More information

1808 1898 è 1810 1849 é 1825 1899 1813 1883 1821 1880 1860 1884 1840 1905 13 1842 1912 1880 1890 1910 1

More information

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生 共 青 团 工 作 简 报 2011 年 第 1 期 共 青 团 大 连 海 洋 大 学 委 员 会 团 学 要 闻 : 导 读 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 我 校 在 大 连 市 大 学 生 创 新 创 意 作 品 大 赛 中 取 得 佳 绩 校 团 委 召 开 学 生 干 部 思 想 动 态 座 谈 会 校 团 委 组 织 开 展 弘 扬 雷 锋

More information

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y 拼图游戏 任务说明 本实例实现了拼图游戏的开发 运行程序, 单击 开始 按钮将打乱图片的位置, 效果如图 1 所示, 然后通过鼠标单击图片进行移动, 直到将所有图片都移动到正确位置, 游戏过关, 过关后的效果如图 2 所示 图 1 打乱图片位置的效果图 2 图片移动到正确位置的效果 关键技术 本程序主要通过 Swing 与枚举类实现, 程序将一幅完整的图片平均分成 9 部分, 每一部分为一个正方形,

More information

ó ì ì ò = 4( +5 / 3 ) 3 12.478 = 2.32 23.2 (47) 1 365 4 1 4 1 19 365 1 365 4 = 29 499 4 235 940 V M = 1 3300 182 M M á

More information

ó ì ì ò = 4( +5 / 3 ) 3 12.478 = 2.32 23.2 (47) 1 365 4 1 4 1 19 365 1 365 4 = 29 499 4 235 940 V M = 1 3300 182 M M á

More information

ChinaBI企业会员服务- BI企业

ChinaBI企业会员服务- BI企业 商业智能 (BI) 开源工具 Pentaho BisDemo 介绍及操作说明 联系人 : 杜号权苏州百咨信息技术有限公司电话 : 0512-62861389 手机 :18616571230 QQ:37971343 E-mail:du.haoquan@bizintelsolutions.com 权限控制管理 : 权限控制管理包括 : 浏览权限和数据权限 ( 权限部分两个角色 :ceo,usa; 两个用户

More information

1.5招募说明书(草案)

1.5招募说明书(草案) PUBLIC 2014 1 PUBLIC - 1 2014 1 PUBLIC - 2 2014 1 PUBLIC - 3 2014 1 PUBLIC - 4 2014 1 PUBLIC - 5 2014 1 PUBLIC - 6 2014 1 PUBLIC - 7 2014 1 PUBLIC - 8 2014 1 PUBLIC - 9 2014 1 PUBLIC - 10 2014 1 PUBLIC

More information