package com.j2men.tank;import android.content.Context;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.util.Log;
import android.view.Display;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;public class Tank_02 extends View {
Resources res = this.getResources();
Paint p = new Paint();
final int Up_dir = 1,Down_dir = 2, Right_dir = 3, Left_dir = 4;
int Curr_dir = 1;
int x = 50;
Bitmap bm1 = BitmapFactory.decodeResource(res, R.drawable.tank_down01);
Bitmap bm2 = BitmapFactory.decodeResource(res, R.drawable.tank_left02);
Bitmap bm3 = BitmapFactory.decodeResource(res, R.drawable.tank_right03);
Bitmap bm4 = BitmapFactory.decodeResource(res, R.drawable.tank_up04);
Bitmap bm5 = BitmapFactory.decodeResource(res, R.drawable.android_02);
public Tank_02(Context context) {
super(context);
// TODO Auto-generated constructor stub
new Thread(r).start();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_MENU){
System.out.println("dsdsdsd");
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
System.out.println(event.getX()+"+"+event.getY());
return super.onTouchEvent(event);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
/*canvas.drawBitmap(bm5, 0, 0, p);*/
canvas.drawBitmap(bm1, x, 50, p);
}
Runnable r = new Runnable(){ public void run() {
// TODO Auto-generated method stub
while(!Thread.currentThread().isInterrupted()){
x+=10;
/*switch(Curr_dir){
case Up_dir:
break;
case Down_dir:
break;
case Left_dir:
break;
case Right_dir:
break;
}*/
try {
Thread.sleep(1000);
} catch (InterruptedException e) {Thread.currentThread().isInterrupted();
}
postInvalidate();
}
}
};}
各位大神 帮小弟看下 onkeydown();方法 我不管怎么写都输出不出来 但是触摸输出坐标就可以 为什么????
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.util.Log;
import android.view.Display;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;public class Tank_02 extends View {
Resources res = this.getResources();
Paint p = new Paint();
final int Up_dir = 1,Down_dir = 2, Right_dir = 3, Left_dir = 4;
int Curr_dir = 1;
int x = 50;
Bitmap bm1 = BitmapFactory.decodeResource(res, R.drawable.tank_down01);
Bitmap bm2 = BitmapFactory.decodeResource(res, R.drawable.tank_left02);
Bitmap bm3 = BitmapFactory.decodeResource(res, R.drawable.tank_right03);
Bitmap bm4 = BitmapFactory.decodeResource(res, R.drawable.tank_up04);
Bitmap bm5 = BitmapFactory.decodeResource(res, R.drawable.android_02);
public Tank_02(Context context) {
super(context);
// TODO Auto-generated constructor stub
new Thread(r).start();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_MENU){
System.out.println("dsdsdsd");
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
System.out.println(event.getX()+"+"+event.getY());
return super.onTouchEvent(event);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
/*canvas.drawBitmap(bm5, 0, 0, p);*/
canvas.drawBitmap(bm1, x, 50, p);
}
Runnable r = new Runnable(){ public void run() {
// TODO Auto-generated method stub
while(!Thread.currentThread().isInterrupted()){
x+=10;
/*switch(Curr_dir){
case Up_dir:
break;
case Down_dir:
break;
case Left_dir:
break;
case Right_dir:
break;
}*/
try {
Thread.sleep(1000);
} catch (InterruptedException e) {Thread.currentThread().isInterrupted();
}
postInvalidate();
}
}
};}
各位大神 帮小弟看下 onkeydown();方法 我不管怎么写都输出不出来 但是触摸输出坐标就可以 为什么????
解决方案 »
- 如何保持当前屏幕的orientation
- getScrollX()取不到值
- Android ExpandableListView 点击出错
- ImageView能不能不按原来的比例截图,或者把原来的图片调成新的比例
- 散分,光棍节快乐
- Android 4.2 的屏幕锁的源码在哪儿? 熟悉的给指点一下
- 困难求助:音乐播放pause()后start()报错
- [Android]使用ffmpeg中的libstagefright.cpp在new CustomSource(...)处阻塞
- 想在onReceive里面更新AppWidget的Textview,为什么不行?
- 如何让AlertDialog里面自定义的按钮关闭AlertDialog
- java基础问题,高手帮忙解析下代码
- Android SkCanvas 绘制buffer会横向拉伸
switch(int keyCode){
case KeyEvent........
}
就是不会输出 啊
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_MENU){
System.out.println("dsdsdsd");
return true;
}
return super.onKeyDown(keyCode, event);
}
不是写了吗?