我正在为我的Android设备创建一个HOME屏幕应用程序。我在Android示例Home应用程序的帮助下创建了这个应用程序。我在家庭样本应用程序中找到了一件事,如果我们设置壁纸,则调用android.content.ContextWrapper.setWallpaper(InputStream data);
来设置壁纸。
在这个应用程序中,已经注册了动作Intent.ACTION_WALLPAPER_CHANGED
的BroadcastReceiver来捕获壁纸的更改,然后在OnReceive()方法中,使用下面的代码
getWindow().setBackgroundDrawable(new ClippedDrawable(getWallpaper()));
将背景设置为应用程序窗口。
因此,如果我们使用与我们的主屏幕相同的应用程序,我们认为壁纸确实设置为窗口中的背景,但它不是真的。
如果我设置任何动态壁纸,它不会在主屏幕应用程序中显示为背景。以前的壁纸只在窗口中显示。如果我使用默认主屏幕应用程序显示动态壁纸。
最后我想知道一件事,当我使用示例主屏幕应用程序时,为什么动态壁纸不会显示在应用程序窗口中?
如果有人知道这件事,请帮我解决这个问题。
答案 0 :(得分:0)
您无法通过代码设置动态壁纸,这只能通过静态壁纸来完成。