乐读文学

Android从入门到精通

乐读文学 > 科普学习 > Android从入门到精通

第21页

书籍名:《Android从入门到精通》    作者:明日科技


android:layout_height="wrap_content"



android:id="@+id/imageButton4"



android:src="@drawable/board"



android:layout_toRightOf="@+id/imageButton0"



android:layout_alignTop="@+id/imageButton0"  />





(3)在主活动中,获取各ImageView组件代表的按钮,并为各按钮添加单击事件监听器。例如,为“进入”按钮添加单击事件监听器,代码如下:

//为“进入”按钮添加单击事件监听器



ImageView  img0=(ImageView)findViewById(R.id.imageButton0);



img0.setOnClickListener(new  OnClickListener()  {



@Override



public  void  onClick(View  v)  {



Toast.makeText(MainActivity.this,  "进入游戏",  Toast.LENGTH_SHORT).show();



}



});

说明:  为其他按钮添加单击事件监听器的方法与“进入”按钮相同,这里不再赘述。

运行本实例,将显示如图3.14所示的运行结果。



图3.14 布局个性游戏开始界面





3.3 基本组件

教学录像:光盘\TM\lx\3\基本组件.exe

Android应用程序的人机交互界面由很多Android组件组成。例如,在前面两节中使用的TextView和ImageView都是Android提供的组件。本节将对Android提供的基本组件进行详细介绍。

3.3.1 文本框与编辑框

Android中提供了两种文本组件:一种是文本框(TextView),用于在屏幕上显示文本;另一种是编辑框(EditText),用于在屏幕上显示可编辑的文本框。其中,EditText是TextView类的子类。下面分别对文本框和编辑框进行介绍。

1.  文本框

在Android中,文本框使用TextView表示,用于在屏幕上显示文本。与Java中的文本框组件不同,Text  View相当于Java中的标签,也就是JLable。需要说明的是,Android中的文本框组件可以显示单行文本,也可以显示多行文本,还可以显示带图像的文本。

在Android中,可以使用两种方法向屏幕中添加文本框:一种是通过在XML布局文件中使用标记添加;另一种是在Java文件中,通过new关键字创建。推荐采用第一种方法,也就是通过标记在XML布局文件中添加文本框,其基本的语法格式如下:




属性列表



>





TextView支持的常用XML属性如表3.5所示。

表3.5 TextView支持的XML属性





XML属性  描 述

android:autoLink  用于指定是否将指定格式的文本转换为可单击的超链接形式,其属性值有none、web、email、phone、map和all

android:drawableBottom  用于在文本框内文本的底端绘制指定图像,该图像可以是放在res\drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置

android:drawableLeft  用于在文本框内文本的左侧绘制指定图像,该图像可以是放在res\drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置

android:drawableRight  用于在文本框内文本的右侧绘制指定图像,该图像可以是放在res\drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置

android:drawableTop  用于在文本框内文本的顶端绘制指定图像,该图像可以是放在res\drawable目录下的图片,通过“@drawable/文件名(不包括文件的扩展名)”设置

android:gravity  用于设置文本框内文本的对齐方式,可选值有top、bottom、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:singleLine  用于指定该文本框是否为单行模式,其属性值为true或false,为true表示该文本框不会换行,当文本框中的文本超过一行时,其超出的部分将被省略,同时在结尾处添加“…”

android:text  用于指定该文本中显示的文本内容,可以直接在该属性值中指定,也可以通过在strings.xml文件中定义文本常量的方式指定

android:textColor  用于设置文本框内文本的颜色,其属性值可以是#rgb、#argb、#rrggbb或#aarrggbb格式指定的颜色值

android:textSize  用于设置文本框内文本的字体大小,其属性由代表大小的数值和单位组成,其单位可以是px、pt、sp和in等

android:width  用于指定文本的宽度,以像素为单位

android:height  用于指定文本的高度,以像素为单位

说明:  在表3.5中,只给出了TextView组件常用的部分属性,关于该组件的其他属性,可以参阅Android官方提供的API文档。

下面给出一个关于文本框的实例。

例3.11   在Eclipse中创建Android项目,名称为3.11,实现为文本框中的E-mail地址添加超链接、显示带图像的文本、显示不同颜色的单行文本和多行文本。(实例位置:光盘\TM\sl\3\3.11)

(1)修改新建项目的res\layout目录下的布局文件main.xml,为默认添加的LinearLayout垂直线性布局管理器设置背景,并为默认添加的TextView组件设置高度和对其中的E-mail格式的文本设置超链接,修改后的代码如下:








android:orientation="vertical"