Hello,
I have written a simple application that draws an image (Drawable) on
the screen. When the user presses a key, the image is supposed to
move. When I first start the application from Eclipse, the keys work
fine. However, if I go to another screen in the emulator and then go
back to my application (with a long press of the Home button) then the
keys don't work any more. The same problem occurs if I go to the
applications menu and click on the icon for my application--the key
events don't work.
I have included the code for my view below. The only other file in
the application is an Activity that has a very simple onCreate method
to create an instance of this view and call setContentView().
Thanks,
Brian Durney
public class DrawView extends View {
Bitmap img;
Drawable botDraw;
float x = 35, y = 100;
public DrawView(Context context) {
super(context);
setFocusable(true); // MIGHT BE NECESSARY FOR KEY EVENTS
BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inJustDecodeBounds = true;
img = BitmapFactory.decodeResource(context.getResources(),
R.drawable.bot2);
botDraw = context.getResources().getDrawable
(R.drawable.bot1);
}
public boolean onKeyDown(int keyCode, KeyEvent msg) {
switch (keyCode) {
case KeyEvent.KEYCODE_W:
y -= 5;
invalidate();
return true;
case KeyEvent.KEYCODE_S:
y += 5;
invalidate();
return true;
default:
return super.onKeyDown(keyCode, msg);
}
}
public void onDraw(Canvas canvas) {
canvas.drawColor(0xFFC0C090);
Paint paint = new Paint();
paint.setColor(Color.GREEN);
paint.setAntiAlias(true);
canvas.drawCircle(35.0f, 50.0f, 20.0f, paint);
canvas.drawBitmap(img, x, y, null);
canvas.save();
canvas.rotate(45, 180, 80); // ANGLE IN DEGREES, PIVOT X,
PIVOT Y
botDraw.setBounds(150, 50, 210, 110);
botDraw.draw(canvas);
canvas.restore();
}
}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---