gpt4 book ai didi

android - PreferenceFragmentCompat 中不需要的空格

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:20:56 25 4
gpt4 key购买 nike

在我的 Android 应用程序中,我定义了一个非常基本的 PreferenceScreen:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<ListPreference
android:entries="@array/test_entries"
android:entryValues="@array/test_values"
android:key="key_test1"
android:title="Test title 1" />

<CheckBoxPreference
android:key="key_test2"
android:summary="Test description 1"
android:title="Test title 2" />
</PreferenceScreen>

并实现了相应的PreferenceFragmentCompat类:

class SettingsFragment : PreferenceFragmentCompat() {

override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
setPreferencesFromResource(R.xml.settings, rootKey)
}
}

我正在使用的依赖项:

implementation "com.android.support:preference-v7:28.0.0"

以及承载 Fragment 的布局代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".ui.activity.MainActivity">

<android.support.v7.widget.Toolbar
android:id="@+id/mainToolbar"
android:layout_width="match_parent"
android:layout_height="?android:attr/actionBarSize" />

<fragment
android:id="@+id/navHostFragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/navigation" />
</LinearLayout>

一切正常,除了每个首选项的左侧有一个巨大的空白区域:

enter image description here

这个问题的原因是什么,我该如何预防?

编辑:

似乎问题是图标的空间被保留了,即使我们没有为首选项条目使用图标。

将首选项的 icon 属性设置为 @null 无效。

iconSpaceReserved 属性设置为 false 解决了 Preference 项目的问题,但它对 PreferenceCategory 项。

最佳答案

如果使用 AndroidX,请在 XML 中将以下属性添加到您的首选项(如果需要,还可以添加首选项类别):

<Preference
...
app:iconSpaceReserved="false"
.../>

关于android - PreferenceFragmentCompat 中不需要的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52621572/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com