android - 像知乎設(shè)置頁(yè)這樣的列表樣式是怎么實(shí)現(xiàn)的?
問(wèn)題描述
從這兩大部分的陰影樣式來(lái)看,感覺(jué)像是用了兩個(gè)cardview,一個(gè)包含了上面「我的草稿,最近瀏覽。。等等條目」,另一個(gè)包含了「夜間模式」和「設(shè)置」,是這樣嗎?還是說(shuō)整體就是一個(gè)RecyclerView?
另外,item之間的分割線是怎么做的?謝謝
問(wèn)題解答
回答1:因?yàn)檫@些條目個(gè)數(shù)是固定的,而且數(shù)量也是少,你完全可以自己寫全部的列表啊,樣式copy下其實(shí)是效率最高的,分割線其實(shí)就是一個(gè)左邊有margin的view,設(shè)置個(gè)背景色,高度1px
回答2:所有看著像偏好設(shè)置的頁(yè)面都可以使用如下Fragment來(lái)實(shí)現(xiàn):
android.preference.PreferenceFragment, 用于原生環(huán)境
android.support.v7.preference.PreferenceFragmentCompat, 用于兼容環(huán)境
1, 2 基本功能是一樣的, 只是2是為了低版本兼容而存在的, 也是最近版本的support-v7才引進(jìn)的. 1的列表是使用ListView實(shí)現(xiàn)的, 2的列表是使用RecyclerView實(shí)現(xiàn)的, 除此之外, 這倆都有一組Preference, 即列表中的Item項(xiàng), 可以實(shí)現(xiàn)各種需求, 也可以自定義.
具體思路:
[夜間模式], [設(shè)置] 就是一個(gè)Preference
[夜間模式] 上面的分隔線就是一個(gè)沒(méi)有設(shè)置任何內(nèi)容的 PreferenceCategory
根據(jù)需求寫*prefs.xml吧
p.s.Preference 的layout可以通過(guò)調(diào)用接口或者修改themes.xml(樣式)來(lái)設(shè)置
具體用法:
官方文檔: PreferenceFragment
p.s. 更多用法自行Google吧.
回答3:linearlayout的話有showpiders,你百度或者Google下,很方便,不用寫View當(dāng)分割線
相關(guān)文章:
1. bootstrp是col-md-12列的,只有col-md-10有內(nèi)容,可以讓沒(méi)有內(nèi)容的不占據(jù)位置嗎;2. 常量在外面不加引號(hào)會(huì)報(bào)錯(cuò)。3. wordpress里,這樣的目錄列表是屬于小工具還是啥?4. android - Genymotion 微信閃退 not find plugin.location_google.GoogleProxyUI5. python如何設(shè)置一個(gè)隨著系統(tǒng)時(shí)間變化的動(dòng)態(tài)變量?6. 百度地圖 - Android app中準(zhǔn)備接入地圖sdk,百度VS高德哪個(gè)好一點(diǎn)?7. 我的怎么不顯示啊,話說(shuō)有沒(méi)有QQ群什么的8. mysql federated引擎無(wú)法開啟9. MySQL 使用 group by 之后然后 IFNULL(COUNT(*),0) 為什么還是會(huì)獲得 null10. sublime text3安裝package control失敗
