好吧,这让我疯狂。我开发了一个App-widget。一切工作正常。如何从其他活动启动Android AppWidget的配置活动?
我有一个配置活动,每次在主屏幕上添加一个小部件时都会启动并且很漂亮。我保存每个部件ID的用户设置等。
小部件有一些按钮,其中一个按钮启动一个关于信息活动的“关于活动”。
“关于活动”有一个按钮,我想用它来启动启动“关于活动”的小部件标识的配置活动。我想这样做的原因是因为我希望用户能够配置我的小部件的任何实例的内容,而不必删除它并再次添加(以启动配置活动)。
配置活动需要AppWidgetManager.EXTRA_APPWIDGET_ID才能完成作业(保存此特定widgetid的用户设置),所以当我从另一个活动调用它时,我必须以某种方式传递此额外信息。显而易见的想要做的是这样的:
startActivity(new Intent(context,act_configure.class).putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, ???));
现在我的问题是哪里是widgetid?我发现了一百万种方法来获取widgetids(数组),但没有一个关于如何获得启动“关于活动”的特定widgetid的线索。
任何有关这方面的帮助都会让我花费数小时来找到解决方案,值得一提。先谢谢你。
p.s.请原谅我的英语,因为他们不是我的母语......
那么我应该得到一些徽章。似乎我问了最困难的android appwidgets问题... – Christos 2012-04-25 13:11:30
为什么不把widget ID插入开始你的活动的意图?所以关于知道id并且可以使用它来开始配置 – zapl 2012-05-01 02:13:20
这正是我想要实现的,但是我找不到widget ID。它只在一个地方,在widget提供者的onUpdate方法中。所以基于这个事实和Cory Chaltron的回答,我终于成功地完成了这项工作。请在接受的答案和我的回答中查看评论。非常感谢你。 – Christos 2012-05-01 19:19:34