рисунок холст ФК - PullRequest
       270

рисунок холст ФК

1 голос
/ 03 мая 2011

У меня есть холст для рисования без ошибок, но он принудительно закрывается. Я не уверен, почему это принудительное закрытие. Я ничего не знаю о холстах, если бы кто-нибудь помог мне, это было бы здорово.

Журнал ошибок кошки

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 моего класса Panel

canvas.drawBitmap(kangoo, 10, 10, null);

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

Это из строки 28 моего класса CanvasThread

_panel.onDraw(c);

Я нашел этот код из учебника здесь , если это поможет.

Ответы [ 3 ]

3 голосов
/ 03 мая 2011

Глядя на Canvas.java

private static void throwIfRecycled(Bitmap bitmap) {
    if (bitmap.isRecycled()) {
        throw new RuntimeException(
                    "Canvas: trying to use a recycled bitmap " + bitmap);
    }
}

Единственный способ бросить NPE - это если растровое изображение было нулевым.

Можете ли вы проверить, что kangoo не равен нулю?

0 голосов
/ 04 мая 2011

Я понял, что проблема была в моем setContentView, это было установлено как 'setContentView (R.layout.main)', ведь я не использую в этом файле xml, поэтому, когда я изменил SetContentView на setContentView(new Panel(this,null)); все работало нормально.

0 голосов
/ 03 мая 2011

Просмотр большего количества кода поможет, но, основываясь на учебнике, на который вы ссылаетесь, похоже, что ваш ресурс изображения недоступен.Вы пользовались кодом R.drawable.kangoo или делали что-то еще?

Bitmap kangoo = BitmapFactory.decodeResource(getResources(),
                            R.drawable.kangoo);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...