私の問題は最初にEditText
の長さが10より大きく、次に2番目にEditText
が有効になり、2番目にEditText
の長さが8より大きい場合Button
の後に問題が発生します。いずれか1つでこの問題を解決できます。EditTextの問題
public void loginPage(View v) {
editText = (EditText) findViewById(R.id.username);
editText1 = (EditText) findViewById(R.id.pasword);
username = editText.getText().toString();
password = editText1.getText().toString();
btn = (Button) findViewById(R.id.login1);
editText1.setEnabled(false);
btn.setEnabled(false);
editText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
if (s.length() >= 10) {
editText1.setEnabled(true);
btn.setEnabled(false);
}
}
});
editText1.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
if (s.length() >= 8) {
btn.setEnabled(true);
}
}
});
}
英語はわかりません。ごめんなさい。してください、言い直してください。 – pepan
TextWatcherを追加して、10または8に到達する場所を確認する必要があります –
2つ目のEditTextとボタンをユーザタイプで有効にするには、textWatcherを実装する必要があります。ユーザがボタンをクリックした後で有効にしたい場合、現在のコードをツアーしています。 –