我试着用一个材料主题来设计我的偏好,几乎就在那里。
我进口了以下产品:
compile 'com.android.support:preference-v7:25.1.0'
compile 'com.android.support:preference-v14:25.1.0'
然后在我的主应用程序主题中设置首选项主题:
<item name="preferenceTheme">@style/PreferenceThemeOverlay.v14.Material</item>
我的偏好屏幕看起来不错。我唯一的问题是类别之间没有空间或者视觉上的分隔,使得所有的偏好看起来都很混乱。
材质设计文档显示了一个带有顶部和底部阴影(即设备类别上方)的分隔符:
几个问题:
安卓提供这个功能吗?如果是,是否有新的appcompat主题?或者我做错了什么?
如果android还没有在材质偏好主题中提供这个分隔符,有人创建过它吗?我看到了,他创建了一个自定义布局的新类别,Divider between category in PreferenceFragment。但我不完全确定如何产生预期的效果。
最佳答案
另一个答案是好的,在这里稍微编辑一下,以防你根本不理解可画的。
xml/preferences.xml
<PreferenceCategory
android:layout="@layout/divider"
android:title="Category2">
<Preference
android:title="Test1"
android:summary="Summary1"/>
</PreferenceCategory>
layout/divider.xml格式
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="10dp"
android:orientation="vertical">
<View
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="@drawable/shadow"/>
</LinearLayout>
drawable/shadow.xml文件
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#1F000000"
android:endColor="@android:color/transparent"
android:angle="90" />
</shape>