将FrameLayout用作动态壁纸

6

我试图将FrameLayout作为Live Wallpaper的内容。根据Romain Guy在这个答案中所说,应该是可行的,但是当我调用.measure().layout()的时候并没有太多成功。能否给我一个简短的示例来说明如何在Live Wallpaper中使用常规布局?

1个回答

1

这是一款你可以随意操作的壁纸,对吧?如果你要超越通常的视图,你可能需要实现一些自定义逻辑,特别是在绘制图像时。FrameLayout具有背景和前景可绘制函数。你可以使用XML或Java将常规视图添加到FrameLayout中。

您还可以创建自定义的Drawable对象,以便进行许多有趣的自定义绘画。Drawable对象只需将视图的画布发送过来即可。

如果您想要测量视图,您需要在视图运行其测量和布局代码之后执行此操作。这意味着在onCreate()中执行此操作将返回0。许多人在回调函数中执行它,如onWindowFocusedChanged。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接