2 つの EditText (ユーザー名、パスワード) とボタンで表されるログイン アプリを作成しました。ログインをクリックすると、もちろん情報がチェックされ、間違っている場合は再試行ボタンのあるダイアログが表示されます。ログイン アクティビティに戻ると、古いユーザー名とパスワードのテキストがまだ残っているので、リセットしたいと思います。エラーダイアログがポップアップすると onPause() メソッドが生成されるため、 onPause() メソッドでそれを実行しようとしましたが、失敗しました。
何か案が?ありがとう。
編集: あなたのアドバイスの後、コードを再配置し、EditText を宣言することにしました。結果は同じです =\
public class MainActivity extends Activity
{
public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
private EditText username,password;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.username = (EditText)findViewById(R.id.username);
this.password = (EditText)findViewById(R.id.password);
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
@Override
public void onPause()
{
this.username.setText("");
this.password.setText("");
super.onPause();
}
public void showMsg(View view)
{
String user = this.username.getText().toString();
String pass = this.password.getText().toString();
if(user.equals("a") && pass.equals("a"))
{
Intent i1 = new Intent(this,DisplayMessageActivity.class);
i1.putExtra(EXTRA_MESSAGE, user);
startActivity(i1);
}
else
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Error!");
builder.setMessage(R.string.failure);
builder.setPositiveButton("Try again", null);
builder.show();
}
}
}