首页 > 解决方案 > Android:如何在首选项屏幕中禁用保留的图标空间

问题描述

将 SDK 更新到版本 28 (Android Pie) 后,我的首选项屏幕布局出现问题。每个 PreferenceScreen 在左侧都有一个新的填充。

正如我检查过的,已经有一种方法可以将图标空间设置为 Preference 类中保留的空间。

android.support.v7.preference.Preference.setIconSpaceReserved(boolean iconSpaceReserved)

到目前为止,该方法很好,但问题是它不适用于 PreferenceCategory。

这是否意味着 PreferenceCategory 上的左侧填充不是图标的空间?

标签: androidandroid-layoutandroid-support-libraryandroid-preferences

解决方案


在首选项 xml 中使用 app:iconSpaceReserved="false" 解决(在每个项目下)。

    <PreferenceCategory
    android:title="Pro Settings"
    app:iconSpaceReserved="false"
    >

    <CheckBoxPreference
        android:defaultValue="false"
        android:key="plugin"
        android:title="@string/EnablePlugin"
        android:summary="@string/PluginDescription"
        android:id="@+id/Pref"
        app:iconSpaceReserved="false"
        />

</PreferenceCategory>

推荐阅读