1

このコードを使用して壁紙を設定しました:

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

それはうまく機能し、ビットマップは常に壁紙として設定されます。しかし、私の問題は、画面を更新するまで、電話画面に最後の壁紙が何度も表示されることです。画面を更新するには、次の方法があります。 1. 指を使って、あるデスクトップから別のデスクトップに切り替える。これにより、壁紙が更新されます。2. ホーム画面全体をカバーするアクティビティを作成するアプリケーションを開く。それを終了すると、ホーム画面が更新され、最後に設定されたビットマップが表示されます。

クレイジーに聞こえるかもしれませんが、その結果、壁紙は変更されましたが、電話で再描画する必要があるか、そのようなものになるまで表示されません。それで、電話を強制的に再描画または更新させる方法はありますか?

4

1 に答える 1