有很多方法可以让ListViews具有优雅的外观,但所有这些方法都需要模拟适配器或编写其他代码。随着Android 4.0的发布,不幸的事情不得不改变。谷歌抛光了他们的全息主题,并赋予它全新的外观。现在鼓励所有开发人员使用它,以使所有应用程序看起来都一样。Android ListView主题
这就是问题所在。谷歌推出4.0,但仍有人使用旧版Android。我们不能离开我们之前的自定义应用程序主题并使用Holo,因为它会破坏旧设备用户的视觉体验。我们不能强迫4.0用户使用Holo,因为说实话 - 这还不完美。
目标是使用内建主题系统并为Holo准备一些替代品,这些替代品在所有设备上看起来都很棒。然后,我们可以只用setTheme()在Holo和主题之间进行切换,而不会出现其他问题。不幸的是并不那么简单。我们仅限于现有主题系统的功能,有些事情很难做到。我的问题来了。
把我提到的一切都考虑进去,我们如何控制ListView的外观?我无法弄清楚,如何:
- 创建圆角列表,并确保选择背景不选择第一个/最后一个元素时破坏它
- 创建圆角不是列表但部分由标题分隔,如下所示:
解决方案应该会影响PreferenceActivity创建的ListView,而不需要任何额外的代码行。一切都应该包含在主题:
<theme name="SampleTheme" parent="android:Theme">
...
</theme>
我恳请不要发布那些不使用样式&主题的解决方案。他们可以很容易地发现在另一个问题,这里堆栈溢出。
在此先感谢。
可能想检查一下:http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index。 html –
@JaredRummler此链接已损坏。 – Zety
@WalR我*认为*这是同样的事情:http://romannurik.github.io/AndroidAssetStudio/ –