うまくいかない。
修正前のソースコード
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
public class testView extends View {
public testView(Context context, AttributeSet attrs) {
super(context);
setFocusable(true);
Log.v("testVire", "testVire(Context context");
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 通常はグラフィックを描画するコードをここに記述する。
canvas.drawColor(Color.BLUE);
Paint paint = new Paint();
Bitmap bitmap = Bitmap.createBitmap(200, 500, Bitmap.Config.ARGB_8888);
Canvas bitmapCanvas = new Canvas(bitmap);
paint.setColor(Color.RED);
bitmapCanvas.drawColor(Color.BLACK);
bitmapCanvas.drawCircle(50, 50, 40, paint);
canvas.drawBitmap(bitmap, 10, 10, null);
Log.v("testVire", "onDraw");
}
}
修正後のソースコード
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
public class testView extends View {
public testView(Context context, AttributeSet attrs) {
super(context);
setFocusable(true);
Log.v("testVire", "testVire(Context context");
}
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
setMeasuredDimension(200, 500);
Log.v("testVire", "onMeasure" + widthMeasureSpec);
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 通常はグラフィックを描画するコードをここに記述する。
canvas.drawColor(Color.BLUE);
Paint paint = new Paint();
Bitmap bitmap = Bitmap.createBitmap(200, 500, Bitmap.Config.ARGB_8888);
Canvas bitmapCanvas = new Canvas(bitmap);
paint.setColor(Color.RED);
bitmapCanvas.drawColor(Color.BLACK);
bitmapCanvas.drawCircle(50, 50, 40, paint);
canvas.drawBitmap(bitmap, 10, 10, null);
Log.v("testVire", "onDraw");
}
}
onMeasureメソッドを追加した
なぜか、XMLレイアウト画面でドラッグして追加できなくなった。