2011-03-30 69 views
8

我需要我的墙纸采取不同的行动时,在预览模式(“设置”,屏幕上显示“设置..”)。我如何知道它在什么时候被绘制?动态壁纸预览模式

回答

13

onCreateEngine()可以使用isPreview()方法。

请注意,onCreateEngine()是“正常”调用两次:一次为预览创建一个实例,然后再一次实际设置壁纸。

详情点击这里:http://developer.android.com/reference/android/service/wallpaper/WallpaperService.Engine.html

+0

只是可以肯定,都发动机同时放跑,或者是秒'onCreateEngine()'调用的第一个关闭后?我问,因为我的偏好改变事件发射两次。 – 2013-08-28 20:31:04

+0

@范尼贷款机构很抱歉说得这么慢回复,但我把后面的编程,现在,不经常检查这个网站。我的猜测是,在创建第二之前,首先被破坏,以免消耗双倍的内存,等等,但是这只是一个猜测。也许,如果你仍然在这个领域工作,你可以调查并添加另一条评论来报告你的发现。这个答复得到了九个赞成票,显然这也是其他人面临的问题。祝你好运:-)乔治 – 2014-01-27 21:26:58

2

isPreview()方法可以在实现发动机的onCreate(SurfaceHolder holder)方法被调用。不要在onCreateEngine方法如现有的答案,因为该方法是没有准备好。