我希望在应用程序停止时保存2个变量,并且我想在应用程序重新启动时使用这些变量。我使用的是共享偏好但我无法解决。
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
for(int k=0;k<=secili.length;k++){
if(secili[k]!=0)
cevapdizisi[k]=secili[k];
}
for(int m=100;m>=0;m--){
if(m!=0){
sonsoru=m;
break;
}
在onStop中没有问题
@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();
setContentView(R.layout.answerpage);
txtquestion.setText(questions[sonsoru]);
rdiogroup.check(secili[sonsoru]);
}
onRestart中的无法访问txtquestion和rdiogroup。我在OnCreate上创建了它们。我应该怎么做。我不能再在onRestart上创建它们。这将是荒谬的。必须有另一种方式。我需要帮助
答案 0 :(得分:0)
要在共享首选项中存储值,您可以使用以下代码:
public class MainActivity extends Activity{
SharedPreferences prefs;
EditText edTextName,edTextPassword,edTextServer;
protected void onCreate(Bundle arg0) {
.
.
//do your stuff...
.
prefs= this.getSharedPreferences("UserInfo", MODE_PRIVATE);
String hostname = prefs.getString("HostName", null);
String name = prefs.getString("UserName", null);
String password = prefs.getString("Password", null);
}
protected void onStop() {
.
//do your stuff...
.
SharedPreferences.Editor editor = prefs.edit();
editor.putString("HostName", edTextName.getText().toString());
editor.putString("UserName", edTextPassword.getText().toString());
editor.putString("Password", edTextServer.getText().toString());
editor.commit();
}
}