8

我正在尝试修改我的小部件,使其支持放置在 4.2 锁屏上。但是我仍然想支持旧的 SDK。

我添加了

android:widgetCategory="keyguard|home_screen"

到我在 res/xml 中的 appwidget-provider,但 eclipse 抱怨说“在包 android 中找不到属性widetCategory 的资源标识符”

如果我将 minSdkVerion 提高到 17 一切正常,但我仍想支持较旧的 SDK。

我尝试使用资源限定符创建一个单独的 res/xml-v17/mywidget.xml 并且只在那里添加标签,但错误仍然出现。

谢谢你的帮助。

编辑: 我想通了。使用 res/xml-v17/ 文件夹就是答案。我只需要将项目的构建目标更改为 17 / 4.2。

4

2 回答 2

9

我认为设置targetSdk17就足够了。在旧 SDK 上没有意义的 XML 元素会被忽略。

无需将 mywidget.xml 放入res/xml-v17文件夹

于 2012-11-26T08:22:57.483 回答
6

将 mywidget.xml 的副本放在 res/xml-v17/ 文件夹中。这以 Android 4.2 为目标,并且 appwidget-provider 元素上的所有新“属性都将可用。还在 Eclipse 中右键单击您的项目并将构建目标更改为:API 级别 17/Android 4.2

我看到了你的编辑。但我认为这更清楚地表明这个问题有答案。

更新:我可以确认 Tomáš Hubálek 的回答。不需要 xml-v17。更改构建目标就足够了。在 Eclipse 中右键单击您的项目并将构建目标更改为:API 级别 17/Android 4.2

于 2012-11-22T08:49:06.053 回答