我想在主页小部件上使用动画,即一个AppWidgetProvider。我希望使用 "Frame Animation" 技术:http://developer.android.com/guide/topics/graphics/2d-graphics.html#frame-animation,这在活动中已经成功使用了。但是我无法将该代码翻译成 AppWidgetProvider。
基本上,在 AppWidgetProvider 中,我创建并使用 RemoteViews 对象,据我所知,它没有提供一种方法让我获取布局中 ImageView 的引用,以便调用 start() 方法来启动动画。同时也没有处理程序或回调函数,用于小部件显示时进行 start() 调用。
还有其他的方法吗?我认为我可能可以通过很快的 onUpdate() 调用自己来完成动画,但那看起来非常耗费资源。
基本上,在 AppWidgetProvider 中,我创建并使用 RemoteViews 对象,据我所知,它没有提供一种方法让我获取布局中 ImageView 的引用,以便调用 start() 方法来启动动画。同时也没有处理程序或回调函数,用于小部件显示时进行 start() 调用。
还有其他的方法吗?我认为我可能可以通过很快的 onUpdate() 调用自己来完成动画,但那看起来非常耗费资源。
RemoteViews
的布局资源中表达的任何动画都应该能够工作。任何需要您在视图、动画等上调用方法的内容都不行。此外,长时间持续的动画可能会因为功耗和干扰等原因而受到用户的负面评价。 - CommonsWare