ここでは、別のクラス (menuAnimation) に基づいてカスタム ビューを設定するアクティビティがあります。
package nick.game.breakout;
import android.app.Activity;
import android.os.Bundle;
public class GameMenu extends Activity {
menuAnimation myMenu;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
overridePendingTransition(R.anim.fadein, R.anim.fadeout);
myMenu = new menuAnimation(this);
setContentView(myMenu);
}
}
これが myMenu ビューです。画面上でボールの画像が跳ね返るだけです。私の問題は、このビューにボタンを追加する方法がわからないことです。これは、このビューをバックグラウンドでボールが跳ね返るシンプルな 2 ボタン メニューにしたいためです。XML レイアウトを使用するコンテンツ ビューで XML を介してボタンを追加する方法は知っていますが、このカスタム ビューを使用するとわかりません。
package nick.game.breakout;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;
public class menuAnimation extends View {
Bitmap ball;
Paint paint = new Paint();
int dx;
int dy;
int vx = 5;
int vy = 5;
public menuAnimation(Context context) {
super(context);
this.setBackgroundColor(Color.parseColor("#2186ed"));
ball = BitmapFactory.decodeResource(getResources(), R.drawable.ball);
}
public void onDraw(Canvas canvas) {
drawBall(dx,dy, canvas);
dx = dx + vx;
dy = dy + vy;
if (dx < 0 || dx > canvas.getWidth() - 10) vx = -vx;
if (dy < 0 || dy > canvas.getHeight() - 10) vy = -vy;
invalidate();
}
private void drawBall(int x2, int y2, Canvas canvas) {
canvas.drawBitmap(ball, x2, y2, paint);
}
}
どんな助けでも大歓迎です。