在下面的程序中,我想做的是:我想在共享偏好中存储一个名称列表
当应用程序第一次启动时,它应该创建一个名为“profile_names”的共享首选项
随后,当应用程序下次启动时,它应该检查 sharedpreferences 是否存在,如果它存在应该从首选项中获取列表并将其提供给列表视图。
但它不起作用.....我哪里出错了?
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.profilespage);
File f= new File("/data/data/neeraj.cardXchange.Basic/shared_prefs/profile_names");
if(f.exists()){
Toast.makeText(this, "prefernce already created", Toast.LENGTH_LONG).show();
profile_names= getSharedPreferences("profile_names", MODE_WORLD_READABLE);
try {
myarraylist = getArrayList(mycontext, key);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
else{
Toast.makeText(this, "prefernce created now", Toast.LENGTH_LONG).show();
profile_names= getSharedPreferences("profile_names", MODE_WORLD_READABLE);
}
String [] name_list = myarraylist.toArray(new String[myarraylist.size()]);
ArrayAdapter adapter = new ArrayAdapter <String>(this, R.layout.textview, name_list);
setListAdapter(adapter);
}
在这里,我使用 toast 消息来检查每次执行来自“else”的 toast 消息并且未创建共享首选项时事情如何进行,我已经使用 DDMS 检查了它。