WallpaperManager.setBitmap() не устанавливает обои сразу

Я установил обои, используя этот код:

void SetWallPaper(Context MyContext, Bitmap MyBitmap)
{   WallpaperManager wpm = WallpaperManager.getInstance(MyContext);
    wpm.setBitmap(MyBitmap);
}

Он работает хорошо, и растровое изображение всегда устанавливается в качестве обоев. НО моя проблема в том, что много раз экран телефона по-прежнему показывает последние обои, пока вы не обновите экран. Способы обновления экрана могут быть: 1. Переход с одного рабочего стола на другой с помощью пальца. Это заставляет обои обновляться. 2. Открытие любого приложения, которое создает действие, охватывающее весь домашний экран. При выходе из него домашний экран обновляется и отображается последний установленный растровый рисунок.

Звучит дико, но в результате обои изменились, но не отображаются, пока телефон не перерисует их или что-то в этом роде. Итак, есть ли способ заставить телефон перерисовать или обновить его?


person Ton    schedule 12.08.2013    source источник


Ответы (1)


Чтобы просто обновить активность, вы можете использовать:

finish();

startActivity(getIntent());

Это обновит текущую активность!

person Stefano Munarini    schedule 12.08.2013
comment
Извините, моя активность не обновляется. Освежает рабочий стол телефона, чтобы заставить рисовать обои - person Ton; 12.08.2013
comment
Взгляните на stackoverflow.com/questions/ 5983584/ - person Stefano Munarini; 12.08.2013
comment
думаю это не моя ситуация - person Ton; 12.08.2013