我想在我的应用程序中使用Theme.Wallpaper。这个主题使用手机当前的墙纸作为背景。问题是它不能在4.1版本的设备上工作。我还尝试在我的风格资源中重新创建Theme.Wallpaper,但同样不适用于4.1版本的设备。-请注意,它可能不适用于较低的API,我只确认它在2.2.1上有效,而不在4.1上有效。我想知道为什么它不工作,是否有任何解决方案。
发布于 2013-02-16 04:39:27
我终于找到了答案,这有点复杂:
在一个为14 (我的是17)以上的目标构建的项目中,eclipse会自动创建一个"values-v11“和"values-v14”文件夹(适用于api版本为14或11以上的手机或AVDs )。在这些文件夹中包含"AppBaseTheme“样式的style.xml文件中,此"AppBaseTheme”样式将替换默认"values“文件夹中的样式,默认”values“文件夹是默认应用于应用程序的"AppTheme”样式的父(或:扩展)。
现在,我选择将"Theme.Wallpaper“风格应用于我的应用程序的方式,是让我的"AppBaseTheme”继承它。理解了这一点,很明显为什么我的应用程序在API11和更高版本的系统上没有类似于"Theme.Wallpaper“的行为:我从来没有让替代的v11和v14 "AppBaseTheme”扩展"Theme.Wallpaper“或更适合v11的"Theme.Holo.Wallpaper”和用于v14的"Theme.DeviceDefault.Wallpaper“。
所以,如果你在应用样式方面有困难,我希望你能看到这篇文章…
编辑:如果你正在读这篇文章,并且在eclipse中编辑style.xml文件有问题,试着用任何文本编辑器(我最喜欢的是notepad++)打开这个文件,然后删除所有的评论,然后在eclipse上重新打开它。如果你需要注释,只需在文本编辑器中添加注释即可。
https://stackoverflow.com/questions/14713731
复制相似问题