WallpaperManager.setBitmap()不立即设置壁纸

时间:2013-08-12 00:58:52

标签: android wallpaper

我使用以下代码设置壁纸:

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

效果很好,位图始终设置为墙纸。但我的问题是,在刷新屏幕之前,手机屏幕很多时候仍会显示最后一张壁纸。刷新屏幕的方法可以是: 1.用手指从一个桌面切换到另一个桌面。这使壁纸刷新。 2.打开创建覆盖整个主屏幕的活动的任何应用程序。退出时,主屏幕将刷新,并显示最后设置的位图。

这听起来很疯狂,但结果是壁纸已经改变,但是直到手机必须重新绘制它或类似的东西才会显示。 那么,有没有办法强制手机重绘或刷新它?

1 个答案:

答案 0 :(得分:0)

只需刷新您可以使用的活动:

finish();

startActivity(getIntent());

这刷新了当前的活动!