У меня есть два alertDialog с EditText
, каждый должен сохранить значение, которое нужно сохранить в sharedPreferences
. Но кажется, что вместо того, чтобы хранить их отдельно, он просто заменяет первое входное значение вторым входным значением. Вот мои коды:Как сохранить два значения отдельно в sharedPreferences?
public void IPconfig(){
// some AlertDialog Builder codes
sharedPreferences = getSharedPreferences("FirstText", Context.MODE_PRIVATE);
editor = sharedPreferences.edit();
builder.setPositiveButton("Submit", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
editor.putString("FirstText", etIP.getText().toString());
editor.apply();
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
builder.create().show();
}
public void MonitoringIPConfig(){
// some AlertDialog Builder codes
sharedPreferences = getSharedPreferences("SecondText", Context.MODE_PRIVATE);
editor = sharedPreferences.edit();
builder.setPositiveButton("Submit", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
editor.putString("SecondText", etIP.getText().toString());
editor.apply();
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
builder.create().show();
}
Вы повторно использовать 'AlertDialog.Builder' экземпляр между двумя методами, которые, вероятно, является причиной вашей проблемы. Каждый метод должен создать собственный 'AlertDialog.Builder'. – Egor