2016-07-05 7 views
2

Моя основная активность по существу показывает два ImageViews. Для того, чтобы убедиться в том, что Bitmaps в ImageViews показаны при любых обстоятельствах я делаю следующее в методе onResume из MainActivity: загрузите Растровый BMP от предпочтений и назначить ихImageView не обновляется после того, как устройство снова выключено, а приложение сверху

iView.setImageBitmap(bmp). 

Это хорошо работает после возвращения из другое действие или когда пользователь переключается на другое приложение и возвращается в мое приложение. Но он НЕ работает, когда мое приложение находится поверх экрана, когда пользователь выключает устройство и снова включает его. Это довольно странно, поскольку я явно загружаю Bitmaps из настроек и назначаю их снова в onResume. Это также верно для последних устройств, например. S7. Любой совет высоко ценится!

+0

Вы пытались реализовать то же самое в 'onWindowFocusChanged' вместо этого? – isstiaung

+0

использовать logcat для chek, если ваш onResume() называется –

ответ

0

Оказалось, что я должен был сделать присвоение Bitmap через

iView.setImageBitmap(bmp) 

уже в OnCreate метод. Я предполагаю, что некоторые задачи по инфляции компоновки выполняются более тщательно внутри onCreate, чем где-либо еще. По крайней мере, в случае выключения/истории, это кажется правдой.

0

вы должны проверить, если первый onResume() вызывается через

Log.d(..) 

жаль, что я не могу комментировать (50 реп)

+0

Да, onResume вызывается, это не проблема. – Settembrini

0

выключая и было бы предположить OnStart и не onResume. Если вы этого не сделали, все, что вы сделали onResume onStart. :)

+0

нет, onResume всегда выполняется. – Settembrini

+0

Вы правы, а я нет. –