別のアクティビティに変更した場合、パスワード変更アクティビティで行った変更を保存するにはどうすればよいですか。最初は、変数を使用して値を保存しようとしましたが、他のアクティビティに戻ると、行われたすべての変更が通常に戻ります。arraylistを使おうとしましたが、同じです。パスワード変更オプションを作成する他の方法を教えてください。事前に助けてくれてありがとう。
public class ChangePassword extends Activity {
/** Called when the activity is first created. */
EditText enterPassword, enterNewPassword;
String defaultPassword = "1234";
ArrayList<String> newPasswordArray = new ArrayList<String>();
ArrayList<String> currentPasswordArray = new ArrayList<String>();
String newPassword;
String currentPassword;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.changepassword);
Button save = (Button)findViewById(R.id.btnSaveSettings);
enterPassword = (EditText)findViewById(R.id.etEnterPassword);
enterNewPassword = (EditText)findViewById(R.id.etNewPassword);
currentPasswordArray.add("1234");
for(String s: newPasswordArray)
{
newPassword = s;
}
for(String s: currentPasswordArray)
{
currentPassword = s;
}
save.setOnClickListener(new OnClickListener()
{
public void onClick(View arg0) {
// TODO Auto-generated method stub
try
{
//get string from arraylist
for(String s: newPasswordArray)
{
newPassword = s;
}
for(String s: currentPasswordArray)
{
currentPassword = s;
}
//test password
if(enterPassword.getText().toString().equals(currentPassword))
{
if(enterNewPassword != null)
{
String newPass = setNewPassword(enterNewPassword.getText().toString());
setCurrentPassword(newPass);
Toast.makeText(getApplicationContext(), "Save Success", Toast.LENGTH_LONG).show();
}
else
{
Toast.makeText(getApplicationContext(), "Please fill up all fields.", Toast.LENGTH_LONG).show();
}
}
else
{
Toast.makeText(getApplicationContext(), "Current password, unmatched.", Toast.LENGTH_LONG).show();
}
}
catch(Exception e)
{
e.printStackTrace();
Toast.makeText(getApplicationContext(), "Save failed", Toast.LENGTH_LONG).show();
}
}
});
}//oncreate()
public String setNewPassword(String pass)
{
String returnPass = "";
newPasswordArray.clear();
newPasswordArray.add(pass);
for(String s : newPasswordArray)
{
returnPass = s;
}
return returnPass;
}//setNewPassword()
public String getPassword()
{
return newPassword;
}//getPassword
public void setCurrentPassword(String newpass)
{
currentPasswordArray.clear();
currentPasswordArray.add(newpass);
}//setCurrentPassword
}