gpt4 book ai didi

android - 在 multiselectlistpreference 的摘要中显示选定的值

转载 作者:搜寻专家 更新时间:2023-11-01 09:37:46 24 4
gpt4 key购买 nike

我有一个 MultiSelectListPreference,它显示用户关闭多选对话框时的周列表 我想使用 %s 在摘要中显示所选值,但它只适用于 ListPreference。有解决办法吗?

<MultiSelectListPreference
android:id="@+id/pref_select_week"
android:defaultValue="@array/week_array_values"
android:entries="@array/week_array"
android:entryValues="@array/week_array_values"
android:icon="@drawable/ic_pref_time"
android:key="keyZodiacSign"
android:summary="%s"
android:title="Select Days" />

最佳答案

首先向 MultiSelectListPreference 添加一个扩展方法,它根据所选值设置摘要:

fun MultiSelectListPreference.setSummaryFromValues(values: Set<String>) {
summary = values.map {entries[findIndexOfValue(it)]}.joinToString(", ")
}

然后在例如。 PreferenceFragmentCompatonCreateView:

val columnSelect = findPreference("EXPORT_COLUMNS") as MultiSelectListPreference
columnSelect.onPreferenceChangeListener = Preference.OnPreferenceChangeListener { preference, newValue ->
columnSelect.setSummaryFromValues(newValue as Set<String>)
true
}
columnSelect.setSummaryFromValues(columnSelect.values)

关于android - 在 multiselectlistpreference 的摘要中显示选定的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41775332/

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