Как сравнить EditText1 из MainActivity с EditText2 из SecondActivity (SharedPreferences)? - PullRequest
0 голосов
/ 27 августа 2018

У меня есть 2 EditTexts. EditText1 находится в MainActivity, EditText2 находится в SecondActivity. EditText1 для входа в систему (пароль), EditText2 для изменения пароля.

Мой код выглядит так:

EditText editText1 = findViewById(R.id.login);
         editText2 = findViewById(R.id.changePassword); // declared in SecondActivity

if (editText1.getText().toString().equals(editText2.getText().toString())
{
  Intent intent = new Intent (MainActivity.this, SecondActivity.class);
  startActivity(intent);
}
else
{
  Toast.makeText(MainActivity.this, "Password incorrect", Toast.Length_Long).show;
}

Когда я нажимаю кнопку, чтобы войти, он показывает мне ошибку. Я знаю, что он должен быть инициализирован по-другому, но как?

Я попробовал другой код с диалогом, и все работало отлично:

changePasswordDialog = new Dialog(MainActivity.this);
changePasswordDialog.setContentView(R.layout.activity_second_activity);

editText2 = changePasswordDialog.findViewById(R.id.changePassword);

То есть он отлично работает с Dialog, но как он работает без Dialog?

Ответы [ 2 ]

0 голосов
/ 27 августа 2018

Вы можете использовать намерение поставить дополнительно и намерение получить дополнительно за это

/// вы можете использовать это согласно вашему требованию или использовать sharedprefrence ///

// В основной деятельности ///

Intent intent = new Intent (MainActivity.this, SecondActivity.class);
intent.putExtra("editText1",editText1.getText().toString());
startActivity(intent);

/// Во втором упражнении //

String passWord = getIntent().getExtras().getString("editText1");
Log.d("password : ",passWord);
0 голосов
/ 27 августа 2018

Попробуйте вот так Хранить текст редактирования 2 прохода

    String pass = editText2.getText().toString().trim();
  SharedPreferences.Editor editor = getSharedPreferences(My_Prefs,Context.MODE_PRIVATE).edit();

editor.putString("pass", pass);
editor.apply();

Теперь восстановите сохраненный пароль в MainActivity

SharedPrefrences prefrences = getSharedPrefrences(My_Prefs,Context.MODE_PRIVATE);
String pass = prefrences.getString("pass","");
if (editText1.getText().toString().equals(pass)
{
  Intent intent = new Intent (MainActivity.this, SecondActivity.class);
  startActivity(intent);
}
...