Nabati 2016-08-22 09:22 采纳率: 6.3%
浏览 1171

求大神告知报错原因,空对象引用问题

    private void Draw() {

        /**绘制游戏背景**/
        //mCanvas.drawBitmap(mbitmapBg,0,0, mPaint);

mCanvas.drawColor(mBackgroundColor); //此行报错

        /**绘制小球**/
        mCanvas.drawCircle(mPosX,mPosY,mCircleRadius,mCirclePaint);
        //mCanvas.drawBitmap(mbitmapBall, mPosX,mPosY, mPaint);
        /**X轴 Y轴 Z轴的重力值**/
        mCanvas.drawText("X轴重力值 :" + mGX, 0, 20, mPaint);
        mCanvas.drawText("Y轴重力值 :" + mGY, 0, 40, mPaint);
        mCanvas.drawText("Z轴重力值 :" + mGZ, 0, 60, mPaint);
    }



    @Override
    public void run() {
        while (mIsRunning) {

            /** 取得更新游戏之前的时间 **/
            long startTime = System.currentTimeMillis();

            /** 在这里加上线程安全锁 **/
            synchronized (mSurfaceHolder) {
                /** 拿到当前画布 然后锁定 **/
                mCanvas = mSurfaceHolder.lockCanvas();

Draw(); //此行报错

                /** 绘制结束后解锁显示在屏幕上 **/
                mSurfaceHolder.unlockCanvasAndPost(mCanvas);
            }

            /** 取得更新游戏结束的时间 **/
            long endTime = System.currentTimeMillis();

            /** 计算出游戏一次更新的毫秒数 **/
            int diffTime = (int) (endTime - startTime);

            /** 确保每次更新时间为50帧 **/
            while (diffTime <= TIME_IN_FRAME) {
                diffTime = (int) (System.currentTimeMillis() - startTime);
                /** 线程等待 **/
                Thread.yield();
            }

        }

报错内容:
图片说明

  • 写回答

2条回答

  • paavochan 2016-08-22 09:26
    关注

    报错提示 mCanvas.drawColor(int),应该传int型,而你传的是一个null的object类型的

    评论

报告相同问题?

悬赏问题

  • ¥20 Python安装cvxpy库出问题
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题