如何在一个apk中放置多个小部件大小?

时间:2010-07-31 11:05:56

标签: android widget android-widget

我要做的是在一个apk中有一个不同大小的时钟小部件(即2x2,3x3,4x4等)和配置活动,以便能够选择要添加的大小。

从我从文档中学到的东西:

  1. 小工具大小在< appwidget-provider>中指定相应的xml文件中的标记
  2. 同样在该文件中,我为该提供商设置了配置活动
  3. 所以似乎size是AppWidgetProvider的属性,我需要以某种方式从第一个配置Activity中的代码创建另一个提供者... 或者我错了,还有另一种方法吗?

    这有可能吗? :) 我被告知有些小部件可以这样做:)

    提前致谢!

    P.S。我看过thisthis。第一个解释了如何在一个apk中放置多个wiget,但是不清楚如何在运行时在它们之间进行选择。第二个是关于改变布局,但不是尺寸......

3 个答案:

答案 0 :(得分:3)

你真的必须在运行时吗?可以在一个 .apk中定义几个小部件。

也许你可以看一下transdroid来源?它们在同一个包中包含两种尺寸的小部件。

Transdroid使用

AndroidManifest.xml

答案 1 :(得分:1)

我希望我已经正确地阅读了你的问题并认为我有你的答案。我可以重写这些信息,或者只是指向它(因为我很可能无法做到这一点)。

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

查看“创建应用程序小组件配置活动”。这个例子也很好。

通过这种方式,您可能无法在没有大量编辑的情况下设置某些布局大小,但允许用户进行自定义(这是您想要的正确吗?)

答案 2 :(得分:0)

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

在考虑它时,这是公平的:如果程序有权在运行时设置窗口小部件的大小,那么一旦添加到启动器中,就会恶意增加窗口小部件,并占用比授权更多的空间。

如上所述,解决方案是添加多个窗口小部件提供程序,让用户选择她想要的大小。如果选项与样式无关但只与颜色相关,或者刷新周期性,则甚至可以使用相同的配置Activity。