首页
学习
活动
专区
圈层
工具
发布

画布FC
EN

Stack Overflow用户
提问于 2011-05-03 16:30:48
回答 3查看 2.2K关注 0票数 1

我有一个画布没有错误,但保持武力关闭。我不知道为什么是武力关闭。我对画布一无所知,如果有人能帮我一把,那就太好了。

日志猫错误

代码语言:javascript
复制
05-03 10:07:12.803: ERROR/AndroidRuntime(14042): FATAL EXCEPTION: Thread-9

05-03 10:07:12.803: ERROR/AndroidRuntime(14042): java.lang.NullPointerException

05-03 10:07:12.803: ERROR/AndroidRuntime(14042):     at android.graphics.Canvas.throwIfRecycled(Canvas.java:954)

05-03 10:07:12.803: ERROR/AndroidRuntime(14042):     at android.graphics.Canvas.drawBitmap(Canvas.java:980)

05-03 10:07:12.803: ERROR/AndroidRuntime(14042):     at com.the.line.Panel.onDraw(Panel.java:59)

这是来自我的面板类的第59行

代码语言:javascript
复制
canvas.drawBitmap(kangoo, 10, 10, null);

05-03 10:07:12.803: ERROR/AndroidRuntime(14042):     at com.the.line.CanvasThread.run(CanvasThread.java:28)

这是我的CanvasThread类的第28行

代码语言:javascript
复制
_panel.onDraw(c);

我从教程这里中找到了这段代码,如果这有帮助的话。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-04 03:32:02

我发现问题出在我的setContentView中,它被设置为'setContentView(R.layout.main)‘,在这里我没有使用任何xml文件,所以当我将SetContentView更改为setContentView(new Panel(this,null));时,它工作得很好。

票数 0
EN

Stack Overflow用户

发布于 2011-05-03 16:41:58

看着Canvas.java

代码语言:javascript
复制
private static void throwIfRecycled(Bitmap bitmap) {
    if (bitmap.isRecycled()) {
        throw new RuntimeException(
                    "Canvas: trying to use a recycled bitmap " + bitmap);
    }
}

这将抛出NPE的唯一方法是如果位图为null。

您能检查一下以确保kangoo不是空的吗?

票数 3
EN

Stack Overflow用户

发布于 2011-05-03 16:39:29

看到更多的代码会有帮助,但基于您链接的教程,您的图像资源似乎不可用。您是使用了R.drawable.kangoo代码还是做了其他事情?

代码语言:javascript
复制
Bitmap kangoo = BitmapFactory.decodeResource(getResources(),
                            R.drawable.kangoo);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5872669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档