Android:匹配首选项列表视图项

Android:匹配首选项列表视图项,android,android-layout,listview,android-preferences,Android,Android Layout,Listview,Android Preferences,我需要帮助根据应用程序样式(表)设置自定义首选项的样式 我创建了一个自定义首选项,它并排显示两个设置(名字和姓氏)。一切都很好,我可以编辑他们使用自定义对话框等,但我有麻烦的样式,它看起来像其他列表的首选项 下图显示了我正在尝试做的事情 我希望使顶部首选项(我的自定义首选项)看起来像底部首选项(直接来自settings.xml)。正如你所看到的,填充、文本颜色、大小等都是不同的;这可能是因为“我的”首选项使用线性布局+文本视图,而不是标准首选项列表视图项 我的自定义首选项XML来自这个答案 这

我需要帮助根据应用程序样式(表)设置自定义首选项的样式

我创建了一个自定义首选项,它并排显示两个设置(名字和姓氏)。一切都很好,我可以编辑他们使用自定义对话框等,但我有麻烦的样式,它看起来像其他列表的首选项

下图显示了我正在尝试做的事情

我希望使顶部首选项(我的自定义首选项)看起来像底部首选项(直接来自settings.xml)。正如你所看到的,填充、文本颜色、大小等都是不同的;这可能是因为“我的”首选项使用线性布局+文本视图,而不是标准首选项列表视图项

我的自定义首选项XML来自这个答案

这是我的应用程序主题

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
My settings.xml包含以下内容:

    <com.example.Settings.FullnamePreference
            android:key="fullname"/>
    <Preference
            android:key="version"
            android:summary="@string/setting_version_summary"
            android:title="@string/setting_version" />


首先,你的文本是黑色的,因为你的应用程序主题基于一个浅色主题(浅色主题,因此是黑色文本)。首先,请尝试将主题基于
theme.Appcompat
(与首选项匹配的黑色主题)。如果您确实希望应用程序的浅色调主题仅具有黑色主题作为首选项,则可以将基于
主题的黑色主题添加到样式中。Appcompat
,然后使用属性
app:theme将其分配到布局中=“R.style.AppThemeDark”
在您的布局上。我会试试看,谢谢。但即使我更改了主题,文本颜色也会改变,而不是大小、布局和间距,这才是我真正的问题
public class FullnamePreference extends DialogPreference {
    <com.example.Settings.FullnamePreference
            android:key="fullname"/>
    <Preference
            android:key="version"
            android:summary="@string/setting_version_summary"
            android:title="@string/setting_version" />