如何使用上次关闭的设置启动应用程序?
how can I start an app with last closed settings?
在我的代码中,有针对国家及其城市的微调器。当我启动应用程序时,Spinners 列表按字母顺序排列。
应用程序将使用上次关闭的设置打开。例如:
如果我们 select France for country and Paris for city from spinners。
然后,退出应用程序。重新开始。 state_spin
的第一个元素将是法国,city_spin
将是巴黎。
我该怎么做。谢谢..
state_spin = (Spinner) findViewById(R.id.spinner1);
city_spin = (Spinner) findViewById(R.id.spinner2);
new spinner1_countries(context,UrlMain,arrayAdpt_state,state_spin).execute();
//to get state lists from a website
state_spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
final String[] stateList = spinner1_countries.stateList;
new spinner2_city(context, arrayAdpt_state,city_spin).execute(); //to get city lists
}
public void onNothingSelected(AdapterView<?> arg0) { } });
city_spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
......
您可以将之前选择的选项存储在SharedPreferences
中。当您的应用再次启动时,从 SharedPreferences
加载这些默认值并将它们设置为您的选择器的默认值。
找一个好的教程here
当用户在微调器中选择某些内容时,将位置保存到 SharedPreferences:
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
...
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = sp.edit();
editor.putInt("1st_spinner", position);
editor.apply();
}
当您的应用启动时获取位置并设置微调器:
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
int position = sp.getInt("1st_spinner", 1);
state_spin.setSelection(position);
在我的代码中,有针对国家及其城市的微调器。当我启动应用程序时,Spinners 列表按字母顺序排列。
应用程序将使用上次关闭的设置打开。例如:
如果我们 select France for country and Paris for city from spinners。
然后,退出应用程序。重新开始。 state_spin
的第一个元素将是法国,city_spin
将是巴黎。
我该怎么做。谢谢..
state_spin = (Spinner) findViewById(R.id.spinner1);
city_spin = (Spinner) findViewById(R.id.spinner2);
new spinner1_countries(context,UrlMain,arrayAdpt_state,state_spin).execute();
//to get state lists from a website
state_spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
final String[] stateList = spinner1_countries.stateList;
new spinner2_city(context, arrayAdpt_state,city_spin).execute(); //to get city lists
}
public void onNothingSelected(AdapterView<?> arg0) { } });
city_spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
......
您可以将之前选择的选项存储在SharedPreferences
中。当您的应用再次启动时,从 SharedPreferences
加载这些默认值并将它们设置为您的选择器的默认值。
找一个好的教程here
当用户在微调器中选择某些内容时,将位置保存到 SharedPreferences:
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
...
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = sp.edit();
editor.putInt("1st_spinner", position);
editor.apply();
}
当您的应用启动时获取位置并设置微调器:
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
int position = sp.getInt("1st_spinner", 1);
state_spin.setSelection(position);