Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 创建一个包含单词的矩形_Java_Android_Draw_Android Drawable_Drawrect - Fatal编程技术网

Java 创建一个包含单词的矩形

Java 创建一个包含单词的矩形,java,android,draw,android-drawable,drawrect,Java,Android,Draw,Android Drawable,Drawrect,因此,我试图在我的java项目中绘制一个矩形,由于某种原因,我得到一个错误,应用程序关闭。错误为03-28 09:05:50.332:E/AndroidRuntime(4611):致命异常:主 03-28 09:05:50.332:E/AndroidRuntime(4611):进程:com.Tripp.thebasics,PID:4611 03-28 09:05:50.332:E/AndroidRuntime(4611):java.lang.NullPointerException:尝试在空对象

因此,我试图在我的java项目中绘制一个矩形,由于某种原因,我得到一个错误,应用程序关闭。错误为03-28 09:05:50.332:E/AndroidRuntime(4611):致命异常:主 03-28 09:05:50.332:E/AndroidRuntime(4611):进程:com.Tripp.thebasics,PID:4611 03-28 09:05:50.332:E/AndroidRuntime(4611):java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“void android.graphics.Paint.setColor(int)”

package com.Tripp.thebasics;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.view.View;

public class DrawingView extends View {
    Paint paint;

    public DrawingView(Context context) {
        super(context);
        // TODO Auto-generated constructor stub
    }

    public DrawingView(Context context, AttributeSet attrs) {
        super(context, attrs);
        // TODO Auto-generated constructor stub
    }

    public DrawingView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        // TODO Auto-generated constructor stub
    }

    @Override
    protected void onDraw(Canvas canvas){
        super.onDraw(canvas);

        Rect ourRect = new Rect();

        ourRect.set(0,0,canvas.getWidth(),canvas.getHeight()/2 );
        paint.setColor(Color.RED);

        canvas.drawRect(ourRect, paint);
    }

}
这是下面那个类的按钮

public class JokeOfTheDay extends Activity {

    DrawingView v;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        v = new DrawingView(this);
        setContentView(v);  

    }



}

在尝试使用构造函数之前,先初始化它<代码>绘制=新绘制()

这里有两个很好的资源,展示了如何创建自定义视图和绘制

另请看这个示例,该示例演示了如何创建PieChart视图:


你知道如何刮去矩形的角吗?让它看起来更平滑更好?