Android开发之事件+实例

来源:互联网 发布:翼支付软件 编辑:程序博客网 时间:2024/06/06 08:30
 

“机器人”的管理员——Activity

Activity 是Android 最基本的组件之一,它就像是一个管理员。我们需要在屏幕上显示什么(通常情况下,一个Activity 占据一个屏幕),用户将要在这个屏幕上做什么,怎样来处理用户做出的不同操作都需要由该Activity 来管理和调度。

下面列出Activity 经常用到的事件:

onKeyDown(int keyCode, KeyEvent event) 按键按下事件

onTouchEvent(MotionEvent event) 点击屏幕事件

onKeyUp(int keyCode, KeyEvent event) 按键松开事件

onTrackballEvent(MotionEvent event) 轨迹球事件

我们来做一个示例,了解一下Android 的管理员Activity 如何处理用户事件。

实现了按键切换,点击事件切换,触摸切换

效果图:

package cn.class3g.activity; import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.view.MotionEvent;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button; public class ButtonActivity extends Activity {/** Called when the activity is first created. */Button bu1, bu2; public void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    b1();} public void b1() {    setContentView(R.layout.main);    bu1 = (Button) this.findViewById(R.id.b1Id);     bu1.setOnClickListener(new OnClickListener() {        @Override       public void onClick(View v) {         // TODO Auto-generated method stub         b2();       }    });} public void b2() {    setContentView(R.layout.main1);    bu2 = (Button) this.findViewById(R.id.b2Id);    bu2.setOnClickListener(new OnClickListener() {        @Override       public void onClick(View v) {         // TODO Auto-generated method stub         b1();       }    });} boolean flag = true; @Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {    // TODO Auto-generated method stub    flag = !flag;     return super.onKeyDown(keyCode, event);} @Overridepublic boolean onKeyUp(int keyCode, KeyEvent event) {    // TODO Auto-generated method stub    if (flag) {       b1();    } else {       b2();    }     return super.onKeyUp(keyCode, event);} @Overridepublic boolean onTouchEvent(MotionEvent event) {    // TODO Auto-generated method stub    flag = !flag;    if (flag) {       b2();    } else {       b1();    }    return super.onTouchEvent(event);}}


 

 

 

原创粉丝点击