1、8001511072夏先国实验五第六章Android事件处理 南昌大学实验报告学生姓名: 夏先国 学 号8001511072 专业班级:软件技术112班 实验类型:验证综合设计创新实验日期:2013-05-10实验成绩: 一、实验项目名称Android事件处理器二、实验目的掌握常用事件三、实验要求做如下实验1.单击事件2.单选按钮与OnCheckedListenner3.下拉列表框与OnItemSelectedListenner4.监听时间与日期的变化5.焦点事件6.长按事件7.键盘事件8.触摸事件四、主要仪器设备及耗材PC 机一台,JDK,eclispce,sdk五、实验步骤及处理结果1.单
2、击事件(四则计算器)main.xml代码如下: 实验效果截图:2.单选按钮与OnCheckedListennermain.xml代码如下: 实验效果截图:3.下拉列表框与OnItemSelectedListennermain.xml代码如下: Activity程序代码package org.lxh.demo;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.AdapterView
3、.OnItemSelectedListener;import android.widget.ArrayAdapter;import android.widget.Spinner;public class MySpinnerListenerDemo extends Activity private Spinner city = null; / 下拉列表框内容 private Spinner area = null; / 二级列表 private String areaData = new String 东城, 西城, 朝阳, 大兴, 平谷 , / 针对于一级的子信息 黄浦, 杨浦, 闵行 , /
4、 针对于二级的子信息 广州 / 针对于三级的子信息 ; / 子菜单项 private ArrayAdapter adapterArea = null; Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); super.setContentView(R.layout.main); this.city = (Spinner) super.findViewById(R.id.city); / 取得下拉列表框 this.area = (Spinner) super.fin
5、dViewById(R.id.area); / 取得下拉列表框 this.city.setOnItemSelectedListener(new OnItemSelectedListenerImpl(); private class OnItemSelectedListenerImpl implements OnItemSelectedListener public void onItemSelected(AdapterView parent, View view, int position, long id) / 表示选项改变的时候触发 MySpinnerListenerDemo.this.a
6、dapterArea = new ArrayAdapter( MySpinnerListenerDemo.this, android.R.layout.simple_spinner_item, MySpinnerListenerDemo.this.areaDataposition); / 定义所有的列表项 MySpinnerListenerDemo.this.area .setAdapter(MySpinnerListenerDemo.this.adapterArea);/ 设置二级下拉列表的选项内容 public void onNothingSelected(AdapterView arg0
7、) / 表示没有选项的时候触发 / 一般此方法现在不关心 实验效果截图:4.监听时间与日期的变化main.xml代码如下: Activity程序代码:package org.lxh.demo;import android.app.Activity;import android.os.Bundle;import android.widget.DatePicker;import android.widget.DatePicker.OnDateChangedListener;import android.widget.EditText;import android.widget.TimePicker
8、;import android.widget.TimePicker.OnTimeChangedListener;public class MyDateTimeDemo extends Activity private EditText input = null; private DatePicker date = null; private TimePicker time = null; Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); super.setCo
9、ntentView(R.layout.main); this.input = (EditText) super.findViewById(R.id.input); this.date = (DatePicker) super.findViewById(R.id.date); this.time = (TimePicker) super.findViewById(R.id.time); this.time.setIs24HourView(true); / 采用24小时制显示时间 this.time.setOnTimeChangedListener(new OnTimeChangedListene
10、rImpl(); this.date.init(this.date.getYear(), this.date.getMonth(), this.date.getDayOfMonth(), new OnDateChangedListenerImpl(); this.setDateTime(); / 希望一开始可以设置一些文本的内容 private class OnTimeChangedListenerImpl implements OnTimeChangedListener public void onTimeChanged(TimePicker view, int hourOfDay, int
11、 minute) MyDateTimeDemo.this.setDateTime(); private class OnDateChangedListenerImpl implements OnDateChangedListener public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) MyDateTimeDemo.this.setDateTime(); public void setDateTime() / 由于日期时间更改之后文本输入组件的内容也要修改 this.input
12、.setText(this.date.getYear() + - + (this.date.getMonth() + 1) + - + this.date.getDayOfMonth() + + this.time.getCurrentHour() + : + this.time.getCurrentMinute(); / 修改文本的内容 实验效果截图:5.焦点事件main.xml代码如下: Activity程序代码:package org.lxh.demo;import android.app.Activity;import android.os.Bundle;import android.
13、view.View;import android.view.View.OnClickListener;import android.view.View.OnFocusChangeListener;import android.widget.EditText;import android.widget.TextView;public class MyFocusDemo extends Activity private EditText edit = null; / 在此组件上设置焦点事件 private TextView txt = null; / 用于信息提示 Override public
14、void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); super.setContentView(R.layout.main); this.edit = (EditText) super.findViewById(R.id.edit); / 取得组件 this.txt = (TextView) super.findViewById(R.id.txt); / 取得组件 this.edit.setOnClickListener(new OnClickListenerImpl(); / 设置单击事件 t
15、his.edit.setOnFocusChangeListener(new OnFocusChangeListenerImpl(); private class OnClickListenerImpl implements OnClickListener public void onClick(View v) MyFocusDemo.this.edit.setText(); / 清空文本 private class OnFocusChangeListenerImpl implements OnFocusChangeListener public void onFocusChange(View v, boolean hasFocus) / 表示操作的组件,而hasFocus表示是否获得焦点 if (hasFocus) / 已经获得了焦点 MyFocusDemo.this.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1