我的目标是在用户单击按钮时保存在 EditText 中输入的字段;在这种情况下,它是一个 IP 地址。这个想法是当用户关注 EditText 时显示所有有效输入 IP 的列表,类似于保存的搜索。
我发现了这段有用的代码。我需要一些帮助来解释它。代码运行所有元素的 putString String[] array
,我认为它是 EditText 中所有提交字段的集合。如果一次只添加一个字段,如何创建此数组?我需要解释下面发生的事情。
public boolean saveArray(String[] array, String arrayName, Context mContext) {
SharedPreferences prefs = mContext.getSharedPreferences("preferencename", 0);
SharedPreferences.Editor editor = prefs.edit();
editor.putInt(arrayName +"_size", array.length);
for(int i = 0;i < array.length; i++){
editor.putString(arrayName + "_" + i, array[i]);
}
return editor.commit();
}
public String[] loadArray(String arrayName, Context mContext) {
SharedPreferences prefs = mContext.getSharedPreferences("preferencename", 0);
int size = prefs.getInt(arrayName + "_size", 0);
array = new String[size];
for(int i=0;i<size;i++)
array[i] = prefs.getString(arrayName + "_" + i, null);
return array;
}