软件开发与环境工程.ppt_第1页
软件开发与环境工程.ppt_第2页
软件开发与环境工程.ppt_第3页
软件开发与环境工程.ppt_第4页
软件开发与环境工程.ppt_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章 Android应用开发,事件编程,1,0.agenda,1、UI事件处理 2、Activity,2,1. UI事件处理,Android中,UI事件的处理方式: 定义事件监听器(处理函数) View.OnClickListener View.OnTouchListener View.OnKeyListener 在框架中注册事件处理器,3,1. UI事件处理,定义事件监听器 一个事件监听器是View类的一个接口. 该接口包含的方法会在View注册的事件监听器被触发时被Android调用。事件监听器有下列方法: onClick()位于View.OnClickListener中。在用户触摸该对象,或者使用轨迹球等使该对象获得焦点,并按下“enter”键或者按下轨迹球时被调用。 onLongClick()位于View.OnLongClickListener中。在用户按住该元素,或者按住轨迹球时调用。 onFocusChange()位于View.OnFocusChangeListener中。该对象获得或失去焦点时调用。 onKey()位于View.OnKeyListener中。在该对象获得焦点,并且按下一个键时调用。 onTouch()位于View.OnTouchListener。当用户在View对象的范围内进行一个触摸动作时,如按下,放开,或者任何的移动手势。 onCreateContextMenu() View.OnCreateContextMenuListener。当一个快捷菜单被显示时(当用户长按)。,4,1. UI事件处理,Event Listeners 事件监听器 public class HelloWordActivity extends Activity /* Called when the activity is first created. */ OnClickListener listener1 = null; Button button1; Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); / 创建一个匿名的OnClickListener实现 listener1 = new OnClickListener() public void onClick(View v) / 编写响应处理过程 ; / 关联layout中的按钮 button1=(Button)findViewById(R.id.button1); / 把按钮注册到前面的匿名onClicklistener实现上 button1.setOnClickListener(listener1); ,5,1. UI事件处理,Event Listeners 事件监听器 public class HelloWordActivity extends Activity /* Called when the activity is first created. */ Button button1; Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); / 关联layout中的按钮 button1=(Button)findViewById(R.id.button1); button1.setOnClickListener(new Button.OnClickListener() public void onClick(View v) /处理按钮事件 setTitle(“处理按钮事件“); ); ,6,2. Activity,Android中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具有自己的生命周期,由系统控制生命周期,程序无法改变,但可以用onSaveInstanceState保存其状态)。 主要特征 包括UI,以及与user的互动 可以放button、list、picture、text等组件 UI可动态调整(增加、减少、换位置) 利用intent跳转到其他activity 超过5秒,会出现ANR (Android is Not Responding) Activity是Android程序与用户交互的窗口,可以看成网站的页面。,7,Activity的生命周期: Active 当一个Activity 在屏幕的最上层时(对堆栈的最顶端),它就是属于active 或者running的状态 Paused 若Activity失去焦点(focus)但还看得到它的画面(比如:一个新的Activity画面并不是全屏幕或者它是一个半透明情况),那失去焦点的Activity处在paused状态。这个失去焦点的Activity还是完全活着,并没有消失。(活着的是指,Activity自己本身所有的状态及数据都还是存在的,也跟窗口管理程序windowmanager保持联系),像这种paused的Activity,会在一种情况下消失,那就是当系统的内存不够用之时,系统会自动判断,将不重要的Activity移除。,8,2. Activity,Activity的生命周期: Stop 若一个Activity 被其它的Activity 完全的遮盖住时,它仍然保有全部的状态及数据,但因为它已不再被使用者看见,所以它的画面是被隐藏起来的(画面不需要更新),当系统内存不足时,这种stop状态的Activity 时最先被系统考虑拿下来释放内存的。 Finish 当一个Activity 处于pause 或stop 的状态时,系统可以要求Activity 结束(finish)或直接移除(kill)它。当它需要再度呈现在使用者面前时,它必须要能完整的重新启动及回复先前的状态。,9,2. Activity,Activity中常用的函数有SetContentView()、 findViewById()、finish()、startActivity(),其生命周期涉及的函数有: void onCreate(Bundle savedInstanceState) void onStart() void onRestart() void onResume() void onPause() void onStop() void onDestroy(),10,2. Activity,Activity的使用: Activity的使用需要在Manifest文件中添加相应的,并设置其属性和intent-filter。 AndroidManifest.xml /添加一个名称为newact的activity ,11,2. Activity,Activity的使用: /在代码运行中改变activity button2.setOnClickListener(new Button.OnClickListener() public void onClick(View v)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论