2
У меня есть класс Surfaceview под названием ChickenView, и я пытаюсь заставить mybMapEgg иметь touchhevent. Я попытался использовать этот bMapEgg.setOnTouchListener(this);
, но это не сработало. Есть идеи?Surfaceview с растровым изображением touchhevent
public void drawCourt() {
if (ourHolder.getSurface().isValid()) {
canvas = ourHolder.lockCanvas();
//Paint paint = new Paint();
canvas.drawColor(Color.BLACK);//the background
paint.setColor(Color.argb(255, 255, 255, 255));
paint.setTextSize(45);
canvas.drawText("Score:" + score + " Lives:" + lives + " fps:" + fps, 20, 40, paint);
Bitmap bMapEgg = BitmapFactory.decodeResource(getResources(), R.drawable.egg);
bMapEgg = scaleDown(bMapEgg,180,true);
Bitmap bMapBackground = BitmapFactory.decodeResource(getResources(), R.drawable.backgrounddd);
canvas.drawBitmap(bMapBackground, 0, 0, paint);
canvas.drawBitmap(bMapEgg, ballPosition.x, ballPosition.y, paint);
ourHolder.unlockCanvasAndPost(canvas);
}
}
Почему вы можете добавить слушателя касания в растровое изображение? События касания передаются в представления, например. ваш SurfaceView. Вам придется обрабатывать вычисление позиции, и если бы ваше растровое изображение было нажато –