有很多方法可以讓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/ –