我该怎么办[共享偏好]

时间:2013-09-07 14:08:55

标签: android sharedpreferences

我希望在应用程序停止时保存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上创建它们。这将是荒谬的。必须有另一种方式。我需要帮助

1 个答案:

答案 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();

}


}