如何在执行其他活动后保存EditText的值

时间:2017-07-18 13:59:30

标签: java android

我的第一个活动是两个EditText字段,其中提示为名字和姓氏,当我进入第二个活动并通过widget按钮返回我的第一个活动时,我的第一个活动中的EditText字段将被重置。 / p>

SIMPLY我希望我的EditText字段在我的第一个活动中保持相同,因为我从第二个活动中重新访问了我的第一个活动。

我的MainActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);



}

public void onButton1Click(View v)
{

    Intent intent = new Intent (this,MainActivity2.class);
    startActivity(intent);

}

}

我的MainActivity2.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);

}

}

解决方案 - 我改变了我的第二个活动。刚刚添加了对我的Button的引用,并在onBackPressed()上应用了onClickListener;码。

    setContentView(R.layout.activity_main2);  

     Button button = (Button)findViewById(R.id.button3);   //gave reference of button in second activity
    button.setOnClickListener(new View.OnClickListener() {  //and applied an onClickListener with code onBackpressed();
        public void onClick(View v) {
            onBackPressed();
            // Code here executes on main thread after user presses button
        }
    });
}

真的非常感谢@Narendra Sorathiya的指导。

2 个答案:

答案 0 :(得分:0)

打开secondActivity,如下所示,

recordingDetails.locationDescription
recordingDetails.location.latitude
recordingDetails.location.longitude

Intent i = new Intent(A.this,B.class);
startActivity(i);
finish();

不要从第二个活动打开第一个活动,只需要按回来。

答案 1 :(得分:0)

试试这个 在活动顶部声明所有变量

public static final String MyPREFERENCES = "MyPrefs" ;
public static final String FNAME = "fname";
public static final String LNAME = "lname";

SharedPreferences sharedpreferences;

在您转到下一个活动时编写此代码

sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);

// store login data in sharedpreferences
SharedPreferences.Editor editor = sharedpreferences.edit();
editor.putString(FNAME, edittext.getText());
editor.putString(LNAME, edittext2.getText());
editor.commit(); //save data in  sharedpreferences

绑定控件后在oncreate方法中编写此代码

并从像此

的sharedprefrence获取数据
String fname= prefs.getString(FNAME, "");
String fname= prefs.getString(LNAME, "");

将其设置为您喜欢的文字

editext.setText(fname);
editext2.setText(lname);

如果有任何疑问,请与我们联系