2012-07-11 81 views
6

我试图使用FrameLayout作为动态壁纸的内容。根据this罗曼盖伊的回答,应该有可能,但我没有太多的运气在视图上调用.measure().layout()。任何人都可以给我一个简单的例子,说明如何在动态壁纸中使用常规布局?使用FrameLayout作为动态壁纸

回答

1

这是一张壁纸,你可以捣乱,对吧?如果您要超出常规视图,则可能必须实施一些自定义逻辑,特别是在绘制图像时。 FrameLayout具有背景和前景可绘制功能。您可以使用XML或Java将常规视图添加到FrameLayout中您还可以创建一个自定义的Drawable对象,以便对自定义绘画做很多有趣的事情。 Drawable对象只是发送视图的画布。

如果您想测量视图,您必须在视图运行其度量和布局代码后执行此操作。这意味着在onCreate()中做这个返回0.许多人有更好的运气在像onWindowFocusedChanged这样的回调中执行它