如何将多个小部件尺寸放入一个apk中?

20
我想做的是在一个apk中有不同大小的时钟小部件(例如2x2、3x3、4x4等),并有一个配置活动来选择要添加的大小。
从文档中了解到:
1.小部件大小在各自的xml文件中的标记中指定。 2.在该文件中,我还为该提供程序设置了配置活动。
因此,大小似乎是AppWidgetProvider的属性,我需要从第一个小部件的配置活动的代码中创建另一个提供程序…或者我理解错了,还有其他方法吗?
这真的可能吗?:) 我被告知有些小部件可以做到这一点:)
提前致谢!
P.S. 我已经阅读了thisthis。第一个解释了如何将多个小部件放入一个apk中,但不清楚如何在运行时在它们之间进行选择。第二个是关于更改布局而不是大小...

问题是关于在“添加小部件”菜单中只有一个条目,并将大小配置推迟到您自己的配置活动中。我怀疑是否有这样的方法 - 据我所知,Android需要提前知道配置的大小。 - jamesh
哦,jamesh,我觉得你刚刚让我改变了想法! :) 当我阅读这个问题的第一个相关链接时,我并没有意识到如果按照那里描述的方式操作,我将会从一个apk中安装多个小部件,对吧?这个解决方案相当可行! - dimsuz
太好了。很高兴能够帮助。 - jamesh
3个回答

2

你真的需要在运行时做这个吗?可以在一个.apk中定义多个小部件。

也许你可以看一下Transdroid源代码?他们在同一个包中包含了两种大小的小部件。

Transdroid使用的AndroidManifest.xml


是的,正如jamesh在评论中指出的那样,这似乎是唯一的解决方法 :) 总之:没有解决原始问题的方法,但它似乎是不可能的 :) - dimsuz
1
http://code.google.com/p/transdroid/source/browse/trunk/AndroidManifest.xml 返回404未找到,请在答案中提供一些有用的内容。 - Pratik

1
我希望我正确地理解了你的问题,并且认为我有你需要的答案。我可以重写这些信息,或者只是指向它(因为我很可能无法做到完美)。

http://developer.android.com/guide/topics/appwidgets/index.html#Manifest

请查看“创建应用程序小部件配置活动”部分。例子也很不错。

通过这种方式,您可能无法设置特定的布局大小,需要进行大量编辑,但将允许用户自定义(这正是您想要的对吗?)


1
是的,我知道配置活动。 但是我正在寻找一种从该活动更改小部件大小的方法,看起来似乎不可能,毕竟...所以我猜现在应该取消这个问题 :)谢谢! - dimsuz

0

我有同样的问题,希望找到一种方法只添加单个条目到小部件列表,并让配置活动决定大小,但我意识到这是不可能的。

仔细想想,这是公平的:如果程序有权在运行时设置小部件的大小,那么人们会恶意地增加小部件,占用比授权更多的房地产。

因此,如上所述,解决方案是添加多个小部件提供程序,并让用户选择她想要的大小。如果选项与样式无关,仅涉及颜色或刷新周期,甚至可以使用相同的配置活动。


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