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中关于APK对遥控器支持的修改

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

android 中按键响应实例

下面实例中是在一个Activity 中通过上下左右方向键来控制红色小方块的移动,未作边界检测 效果如下: RectControlActivity.java package cie...
  • fulinwsuafcie
  • fulinwsuafcie
  • 2012年03月29日 15:28
  • 3827

android按键的三种响应方式

主要通过三个按键来演示,每个按键用一种实现方法,效果通过Toast观察。 第一种:在布局文件(XML)直接在button控件下添加属性onclick,属性的内容即为按键的响应方法。(方法权限必需为pu...
  • wait7676
  • wait7676
  • 2015年02月04日 21:08
  • 337

Android键盘响应事件

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

android4.0增加遥控器按键步骤<2>

上次总结的不大对,驱动可以响应遥控器,但是上层收不到按键。 使用adb shell input keyevent  的方式发送按键,是可以获取到的。 也就是说从驱动到上面映射的过程中有个通路断掉了。 ...
  • zvivi521
  • zvivi521
  • 2013年07月26日 13:33
  • 477

Android 手机遥控器控制机顶盒(电视)

Android 手机遥控器
  • Json_Jerry
  • Json_Jerry
  • 2017年08月29日 11:32
  • 1135

android webkit JavaScript 不能处理onkeydown的上下左右键,引发的话题

前段时间有个在android上面做网页的同事,对我说在JavaScript的里面的onKeyDown不能接收上下左右按键,当时我还觉得不好思议,这是网页的一个标准,android对接 webkit怎么...
  • lihui130135
  • lihui130135
  • 2012年10月12日 19:09
  • 5507

android 为按钮添加响应事件的五种写法

package com.huawei.dialphone; import android.app.Activity; import android.content.Intent; import an...
  • maylorChao
  • maylorChao
  • 2014年12月28日 00:20
  • 4113

Android的按钮Button单击事件及监听器的实现方式

转载:http://www.apkbus.com/android-18459-1-1.html 第一种:匿名内部类作为事件监听器类   大部分时候,事件处理器都没有什么利用价值(可利用代码通常都被...
  • wangli071125
  • wangli071125
  • 2014年02月14日 10:54
  • 17126

Android中如何模拟一次点击(touch)事件

在Android中有时需要模拟某一个View的touch事件,来达到对该View的功能相应处理的简单化,因为你只需要模拟对该View的touch事件,便能沿着原来touch的事件相应走下去,不需要添加...
  • huangxiaohu_coder
  • huangxiaohu_coder
  • 2013年08月27日 21:22
  • 10011
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android 中按键响应实例
举报原因:
原因补充:

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