次のコードを持つことで、いくつか質問があります。
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView( new View(this) {
Paint mPaint = new Paint();
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
int width = this.getWidth();
int height = this.getHeight();
int radius = width > height ? height/2 : width/2;
int center_x = width/2;
int center_y = height/2;
// prepare a paint
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setStrokeWidth(5);
mPaint.setAntiAlias(true);
// draw a rectangle
mPaint.setColor(Color.BLUE);
mPaint.setStyle(Paint.Style.FILL); //fill the background with blue color
canvas.drawRect(center_x - radius, center_y - radius, center_x + radius, center_y + radius, mPaint);
// draw some text and rotation
mPaint.setTextSize(50);
mPaint.setTextAlign(Paint.Align.CENTER);
mPaint.setColor(Color.BLACK);
canvas.drawText( "Hello World" , center_x , center_y, mPaint);
}
});
}
}
Q1: フレームに青色を塗りつぶすにはどうすればよいですか? (言葉はまだ出てくる)
Q2: このアプリにはいくつのビューとサーフェスがありますか? アプリでこれらをカウントするにはどうすればよいですか?
Q3: このアプリにはいくつのウィンドウがありますか?
Q4: コードにビットマップ オブジェクトがありません。しかし、ビットマップは本当に絵が描けるオブジェクトだと思いました。私の理解は間違っていますか?1 つの可能性は、Canvas コンストラクターが新規作成時にビットマップを初期化することです。
Q5: これらのグラフィックが最終的にサーフェスに移動し、最終的な構成のために surfaceflinger に渡されることは知っていました。私のコードのどこにありますか?
返信ありがとうございます。