我构建了一个简单的程序(带有 10 条诫命的数组字符串),稍后我创建了另一个类(选择其他活动的索引)。
我想通过保存的首选项保存此数组,以便重新启动应用程序时的用户可以从最后一点继续。
我读到 putStringSet 只能从 api 11 获得,而我也会保持兼容 2.3 版
有没有办法保存数组字符串?
谢谢!
我构建了一个简单的程序(带有 10 条诫命的数组字符串),稍后我创建了另一个类(选择其他活动的索引)。
我想通过保存的首选项保存此数组,以便重新启动应用程序时的用户可以从最后一点继续。
我读到 putStringSet 只能从 api 11 获得,而我也会保持兼容 2.3 版
有没有办法保存数组字符串?
谢谢!
我会使用 for 循环将字符串数组转换为常规字符串并使用分隔符,例如“|” 并使用 putString 保存。取回它时,我会使用相同的分隔符拆分字符串并重建数组。
private String GetString(String[] array, String delimiter)
{
StringBuilder sb = new StringBuilder();
for(String s : array)
{
if(sb.length() > 0) { sb.append(delimiter);}
sb.append(s);
}
return sb.toString();
}
private String[] GetArray(String input, String delimiter)
{
return input.split(delimiter);
}
使用 GetArray 时要小心,因为 String.split() 假定正则表达式作为分隔符,所以如果您使用字符“|” 你必须逃避它,例如。GetArray(myArray, "\\|"); 希望这可以帮助。