Mar*_*ian 7 android android-appwidget
我有一个奇怪的错误与我编码的小部件 - 在屏幕旋转后小部件停止响应onClick事件.代码与此处的 App Widgets的Android开发人员文档完全相同.我注意到市场上的其他小部件没有这个问题 - 是否有一个已知的解决方法?我已经尝试在旋转后遍布整个地方,所以我不认为它的onClickPendingIntent在旋转后没有被调整大小; 它似乎根本不存在.
我无法找到一个onRotation()类型的触发器,AppWidgetProvider在旋转的情况下重做监听代码,所以我很不确定如何继续...
谢谢!
我在 Google 网上论坛上发布的帖子收到了以下回复,该帖子解决了我的问题。我不能说它是否会解决原始发布者的问题,但我想我会发布它,以防其他人遇到这个问题。我的 Google 网上论坛帖子的链接是:
http://groups.google.com/group/android-developers/browse_thread/thread/ca8c2958b6dc086c#
配置更改时没有 onUpdate。主屏幕重新创建您的小部件,然后获取最新的 RemoteView 并将其应用到小部件。
我认为它正在旋转重新创建小部件。问题是,我似乎没有收到任何相关消息,并且无法(我可以看到)重新建立连接。如何确定已发生旋转并设置新的 onClick 连接?
就像我说的,你不(确定或响应方向变化)。
您要做的就是确保每次代码将 RemoteViews 对象推送到小部件的主应用程序中时,它在所有方面都是完整的:
不要像处理常规活动那样进行“增量”小部件更新 - 不要先设置意图,然后设置图像,然后设置反映当前信息的文本。
家庭应用程序作为一个单独的进程运行,其状态可能与您的小部件接收器不同步。当它发生时,它用于重新创建您的小部件的唯一东西就是您最近的 RemoteViews 对象。如果它是完整的,并且拥有所有部件,那么一切都会正常工作。如果它只有最新的文本或图像更改,则具有意图的早期更新将丢失。
http://kmansoft.wordpress.com/2010/05/23/widgets-and-orientation-chan ...
——克斯特亚
| 归档时间: |
|
| 查看次数: |
3083 次 |
| 最近记录: |