2014-12-05 1 views
0

У меня есть логин, где я могу указать имя пользователя и пароль. Если оба значения true, просто отключите кнопку и вызовите другую активность (MainActivity).Android: Как включить кнопку одной активности в другой деятельности - без использования статического?

Если я вернусь из MainActivity, я хочу, чтобы включить кнопку отправки в LoginActivity, и я устанавливаю имя пользователя и пароль как пустые.

Это мой код.

private Boolean exit = false; 
@Override 
    public void onBackPressed() { 
     if (exit) 
     { 

     } 
     else { 

      MainActivity.this.finish(); 
      Toast.makeText(this, "Press Back again to Exit.", 
      Toast.LENGTH_SHORT).show(); 
      exit = true; 
      new Handler().postDelayed(new Runnable() { 
       @Override 
       public void run() { 
        exit = false; 
        LoginActivity.user_name.setText(""); 
        LoginActivity.password.setText(""); 
        LoginActivity.loginsubmit.setEnabled(true); 
       } 
      }, 100); 

     } 

    } 

Здесь используется статический. Но я хочу сделать это без использования статики. Может ли кто-нибудь дать мне идею?

+0

использовать некоторые намерения с дополнительными, это решит вашу проблему. –

ответ

0

Нет необходимости статике просто переопределить onResume() в LoginActivity как:

@Override 
protected void onResume() { 
    super.onResume(); 
    user_name.setText(""); 
    password.setText(""); 
    loginsubmit.setEnabled(true); 
} 
+0

Я пробовал аналогичное решение, но не повезло. Я был бы признателен, если бы вы могли взглянуть и предложить любой совет: http://stackoverflow.com/questions/40372223/android-how-do-i-setenabledtrue-on-a-cardview-in-onresume – AJW

1

Добавить ниже код для onBackPressed() из MainActivity,

Intent loginIntent= new Intent(MainActivity.this,LoginActivity.class); 
loginIntent.putExtra("username", ""); 
loginIntent.putExtra("password", ""); 
loginIntent.putExtra("isSubmitEnabled", true); 
loginIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(loginIntent); 

И добавить ниже код в OnCreate() из Входные данные,

Intent intent = getIntent(); 

if (intent != null) { 
     String username = intent.getStringExtra("username"); 
     String password = intent.getStringExtra("password"); 
     boolean isSubmitEnabled = intent.getBooleanExtra("isSubmitEnabled", 
       false); 
    } 

Использование вышеуказанного имени пользователя, пароля и isSubmitEnabled флагом вы можете достигнуть обязательно.

Вы можете использовать ниже код,

user_name.setText(username); 
password.setText(password); 
loginsubmit.setEnabled(isSubmitEnabled); 
Смежные вопросы