ImageView вызывает исключение android.graphics.Canvas.throwIfRecycled - PullRequest
2 голосов
/ 02 июня 2011

Я очень редко получаю следующее исключение.Это происходит настолько редко, что я не смог выяснить какие-либо обстоятельства, которые могли бы вызвать это - я в основном видел это в отчетах об исключениях Flurry от других пользователей.Потенциально это может быть связано с переключением из режима активности и обратно (например, с помощью кнопки «Домой»), но это только предположение.

class java.lang.RuntimeException    android.graphics.Canvas.throwIfRecycled:955 (Canvas: trying to use a recycled bitmap android.graphics.Bitmap@30095b30)

Полный дамп LogCat здесь: http://pastebin.com/2RjjgWHH

Я просмотрел похожие вопросы, но ни один из них не подходит.Дело в том, что я не перерабатываю вручную какие-либо растровые изображения.Я не загружаю большие растровые изображения и не манипулирую ими.У меня во всем приложении есть одиночный крошечный значок ImageView, загруженный из макета XML, и я ничего не делаю с ним программно, за исключением переключения содержащего LinearLayout между VISIBLE иGONE.По сути, в приложении есть только две WebView s, TextView и ProgressDialog.

<ImageView android:id="@+id/imageView1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:src="@drawable/icon_a" android:focusableInTouchMode="false" android:focusable="false" android:layout_gravity="center_horizontal"></ImageView>

. Есть ли что-то особенное, что вам нужно сделать с ImageView, чтобы сохранить его?от повторного использования, или проверьте и обновите его, если оно было переработано, при переключении между VISIBLE и GONE?Большую часть времени это работает отлично.

1 Ответ

0 голосов
/ 25 августа 2011

Это исключение было вызвано рекламным SDK и было исправлено в последнем выпуске SDK.

...