基本组件 本讲大纲: 支持网站:www.mrbccd.com 1、文本框(TextView)与编辑框(EditText) 2、普通按钮和图片按钮 3、单选按钮和复选按钮 4、图像视图(ImageView) 5、列表选择框(Spinner) 6、列表视图 7、日期、时间选择器 8、计时器 9、范例1:实现跟踪鼠标单击状态的图片按钮 10、范例2:实现带图标的ListView 支持网站:www.mrbccd.com
文本框(TextView)与编辑框(EditText) Android中提供了两种文本组件,一种是文本框(TextView),用于在屏幕上显示文本,另一种是编辑框(EditText),用于在屏幕上显示可编辑的文本框。其中,EditText是TextView类的子类。 1.文本框 <TextView 属性列表 > </TextView> 2.编辑框 <EditText </EditText>
普通按钮和图片按钮 Android中提供了两种按钮组件,一种是普通按钮,另一种是图片按钮。这两种按钮的都是用于在UI界面上生成一个可以单击的按钮。当用户单击按钮时,将会触发一个onClick事件,可以通过为按钮添加单击事件监听器指定所要触的动作。 1.普通按钮 <Button android:text="显示文本" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" > </Button>
普通按钮和图片按钮 2.图片按钮 <ImageButton android:id="@+id/imageButton1" android:src="@drawable/图片文件名" android:background="#F000" android:layout_width="wrap_content" android:layout_height="wrap_content"> </ImageButton>
单选按钮和复选按钮 1.单选按钮 在Android中,单选按钮使用RadioButton表示,而RadioButton类又是Button的子类,所以单选按钮可以直接使用Button支持的各种属性。在XML布局文件中添加单选按钮的基本格式如下: <RadioButton android:text="显示文本" android:id="@+id/ID号" android:checked="true|false" android:layout_width="wrap_content" android:layout_height="wrap_content" > </RadioButton> <RadioGroup android:id="@+id/radioGroup1" android:orientation="horizontal" android:layout_height="wrap_content"> <!-- 添加多个RadioButton组件 --> </RadioGroup>
单选按钮和复选按钮 2.复选按钮 在Android中,复选按钮使用CheckBox表示,而CheckBox类又是Button的子类,所以复选按钮可以直接使用Button支持的各种属性。在XML布局文件中添加复选按钮的基本格式如下: <CheckBox android:text="显示文本" android:id="@+id/ID号" android:layout_width="wrap_content" android:layout_height="wrap_content" > </CheckBox> final CheckBox like1=(CheckBox)findViewById(R.id.like1); like1.setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(like1.isChecked()) like1.getText(); } });
图像视图(ImageView) 在使用ImageView组件显示图像时,通常可以将要显示的图片放置在res/drawable目录中,然后应用下面的代码将其显示在布局管理器中。 <ImageView 属性列表 > </ImageView> XML属性 描述 android:adjustViewBounds 用于设置ImageView是否调整自己的边界来保持所显示图片的长宽比 android:maxHeight 设置ImageView的最大高度,需要设置android:adjustViewBounds属性值为true,否则不起作用 android:maxWidth 设置ImageView的最大宽度,需要设置android:adjustViewBounds属性值为true,否则不起作用 android:scaleType 用于设置所显示的图片如何缩放或移动以适应ImageView的大小,其属性值可以是matrix(使用matrix方式进行缩放)、fitXY(对图片横向、纵向独立缩放,使得该图片完全适应于该ImageView,图片的纵横比可能会改变)、fitStart(保持纵横比缩放图片,直到该图片能完全显示在ImageView中,缩放完成后该图片放在ImageView的左上角)、fitCenter(保持纵横比缩放图片,直到该图片能完全显示在ImageView中,缩放完成后该图片放在ImageView的中央)、fitEnd(保持纵横比缩放图片,直到该图片能完全显示在ImageView中,缩放完成后该图片放在ImageView的右下角)、center(把图像放在ImageView的中间,但不进行任何缩放)、centerCrop(保持纵横比缩放图片,以使得图片能完全覆盖ImageView)或centerInside(保持纵横比缩放图片,以使得ImageView能完全显示该图片) android:src 用于设置ImageView所显示的Drawable对象的ID,例如,设置显示保存在res/drawable目录下的名称为flower.jpg的图片,可以将属性值设置为android:src="@drawable/flower" android:tint 用于为图片着色,其属性值可以是“#rgb”、“#argb”、“#rrggbb”或“#aarrggbb”表示的颜色值
列表选择框(Spinner) Android中提供的Spinner列表选择框相当于在网页中常见的下拉列表框,通常用于提供一系列可选择的列表项,供用户进行选择,从而方便用户。 在XML布局文件中,定义列表选择框可以使用<Spinner>标记,其基本的语法格式如下: <Spinner android:prompt="@string/info" android:entries="@array/数组名称" android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/ID号" > </Spinner>
列表选择框(Spinner) 为列表选择框指定适配器,通常分为以下3个步骤实现。 (1)创建一个适配器对象,通常使用ArrayAdapter类。在Android中,创建适配器,通常可以有以下两种情况,一种是通过数组资源文件创建,另一种是通过在Java文件中使用字符串数组创建。 (2)为适配器设置列表框下拉时的选项样式,具体代码如下: adapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item); (3)将适配器与选择列表框关联,具体代码如下: spinner.setAdapter(adapter);
列表视图 1.直接使用ListView组件创建 在XML布局文件中添加ListView的基本格式如下: 属性列表 > </ListView> 2.让Activity继承ListActivity实现 如果程序的窗口仅仅需要显示一个列表,则可以直接让Activity继承ListActivity来实现。继承了ListActivity的类中无须调用setContentView()方法来显示页面,而是可以直接为其设置适配器,从而显示一个列表。
日期、时间选择器 为了让用户能选择日期和时间,Android提供了日期、时间选择器,分别是DatePicker组件和TimePicker组件。这两个组件使用比较简单,可以在Eclipse的可视化界面设计器中,选择对应的组件将其拖曳到布局文件中。为了在程序中可以获取用户选择的日期、时间,还需要为DatePicker组件和TimePicker组件添加事件监听器。其中DatePicker组件对应的事件监听器是OnDateChangedListener,而TimePicker组件对应的事件监听器是OnTimeChangedListener。
计时器 计时器组件就是一个可显示从某个起始时间开始,一共过去了多长时间的文本,使用Chronometer表示。由于该组件继承自TextView,所以它将以文本的形式显示内容。使用该组件也比较简单,通常只需要使用以下5个方法。 ◆ setBase():用于设置计时器的起始时间。 ◆ setFormat():用于显示时间的格式。 ◆ start():用于指定开始计时。 ◆ stop()用于指定停止计时。 ◆ setOnChronometerTickListener():用于为计时器绑定事件监听器,当计时器改变时触发该监听器。
范例1:实现跟踪鼠标单击状态的图片按钮 在Eclipse中创建Android项目,实现跟踪鼠标单击状态的图片按钮。
范例2:实现带图标的ListView 在Eclipse中创建Android项目,实现带图标的ListView。
Thank you 还有什么疑问可以到www.mrbccd.com提出 也可以以发送邮件到 mingrisoft@mingrisoft.com