-1
私はアンドロイドプログラミングには新しく、画面に円を描こうとしています。最終的には、サークルを移動させたいと思います。しかし今のところ私は円を描くことに問題がありました。私は、コードを実行すると、それは私にエラーを与える:画面に円を描くことに問題がある
"Attempt to invoke virtual method 'long android.graphics.Paint.getNativeInstance()' on a null"
マイコード:コード付き
package com...
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.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MyView(this));
}
class MyView extends View {
private Bitmap b;
public Paint p;
public MyView(Context context) {
super(context);
Paint p = new Paint();
p.setColor(Color.GREEN);
b = Bitmap.createBitmap(100, 100, Bitmap.Config.ARGB_8888);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawCircle(50, 50, 10, p);
}
}
}
あり、あなたはonDrawメソッドでペイントしていませんでした。だから、あなたの構築方法でちょうど最初のpをしてください。 –