android 中按键响应实例

原创 2012年03月29日 15:28:26

下面实例中是在一个Activity 中通过上下左右方向键来控制红色小方块的移动,未作边界检测

效果如下:



RectControlActivity.java

package cie.Rect;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;

public class RectControlActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);//设置窗口没有标题
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
        		WindowManager.LayoutParams.FLAG_FULLSCREEN);//设置全屏显示        
        setContentView(new RectControlView(this));
    }
}
RectControlView.java

package cie.Rect;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.KeyEvent;
import android.view.View;

public class RectControlView extends View {
	
	int left = 40;
	int top = 40;
	int width = 40;
	int height = 40;
	
	public RectControlView(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
		setFocusable(true);
	}

	@Override
	protected void onDraw(Canvas canvas) {
		// TODO Auto-generated method stub
		super.onDraw(canvas);
		Paint paint = new Paint();
		paint.setColor(Color.RED);
		
		canvas.drawRect(left, top, left+width, top+height, paint);
		postInvalidate();
	}

	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		// TODO Auto-generated method stub
		switch(keyCode)
		{
		case KeyEvent.KEYCODE_DPAD_UP:
			top = top - 10;
			break;
		case KeyEvent.KEYCODE_DPAD_DOWN:
			top = top + 10;
			break;
		case KeyEvent.KEYCODE_DPAD_LEFT:
			left = left - 10;
			break;
		case KeyEvent.KEYCODE_DPAD_RIGHT:
			left = left + 10;
			break;
		default:
				break;
		}
		return super.onKeyDown(keyCode, event);
	}
}




版权声明:本文为博主原创文章,未经博主允许不得转载。

Android键盘响应事件

当我们使用一个 Android 应用时,需要通过自己的操作,来让 Android 程序产生相应的反应。这种响应方式,可以通过键盘事件、触摸事件、传感器事件等来实现。下面介绍如何响应键盘事件。 键...

Android Activity返回键控制的两种方式

Android Activity返回键监听的两种方式 1、覆写Activity的OnBackPressed方法 官方解释: Called when the activity has detected...

Android增加一个物理按键检测步骤

Android增加一个物理按键检测步骤

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Android 总结:自定义键盘实现原理和三种实例详解

一、实现原理实现软键盘主要用到了系统的两个类 Keyboard 和 KeyboardView 1. 在xml文件中定义 2. 以Dialog的形式来实现 3. 继承EditText自定义view来实现...

关于安卓手机开机自启动APP无法成功的问题

最近有个小项目需要实现开机自动启动手机中预装的APP,网上搜了一下,好多,简单看了看,觉得好easy,但是本着多动动手的原则,我还是想尝试一下,于是照着网上热心网友的经验简单的做一个测试一下。还是先来...

Android中关于APK对遥控器支持的修改

最近,对Andoid中APK做了一些修改,让其支持遥控器的支持,这把人弄得焦头烂额,好不郁闷,这里特别记录下思路,留给有需要的同志。         其实Android本身是做了对遥控器的上下左右按...

android监听home按键实例

  • 2014年09月19日 17:44
  • 939KB
  • 下载

android 增加物理按键关闭wifi实例讲解

Android按键添加和处理的方案   版本号 说明 作者 日期  1.0  Android按键添加和处理的方案 Sky Wang  2013/06/1...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android 中按键响应实例
举报原因:
原因补充:

(最多只允许输入30个字)