gpt4 book ai didi

android - 读取 sharedpreferences 上的数组

转载 作者:行者123 更新时间:2023-11-29 18:02:17 27 4
gpt4 key购买 nike

我使用 MultiSelectListPreference 并将值保存在数组中..

怎么读??

    SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);
Set<String> a = pref.getStringSet("tabs", null);

for ( int i = 0; i < a.size(); i++) {
Log.d("salida", a[i]);
}

我得到这个错误:表达式的类型必须是数组类型但它解析为 Set

最佳答案

您想使用 Set , 由于它不是数组,因此不能使用方括号 ([]) 访问索引。

要轻松地从 Set 中读取值,请使用增强的 for 循环:

for (String str: a){
Log.d("salida", str);
}

如果你想在循环时从那个 Set 中删除项目,你将不得不使用 Iterator ,如图this回答。

或者,如果你想要一个数组,你可以使用 Set#toArray() :

String [] prefStrings = a.toArray(new String[a.size()]);

然后您可以使用方括号 (prefStrings[position]) 访问索引。

关于android - 读取 sharedpreferences 上的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15314120/

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