텍스트 2 개와 버튼 1 개가 있습니다. 사용자가 모든 편집 텍스트를 채울 때까지이 버튼을 비활성화하려면 어떻게합니까? 이 코드를 사용했지만이 코드를 실행하면 2 편집 텍스트를 채울 때도 항상 단추를 사용할 수 없으며 onTextChanged 및 beforeTextChanged가 무엇 인지도 모릅니다!편집 텍스트가 비어 있거나 비어 있지 않을 때 버튼을 사용/사용 중지하는 방법
제발 도와 줘서 고맙습니다.
public class TestActivity extends Activity {
/** Called when the activity is first created. */
EditText edit1;
EditText edit2;
EditText edit3;
Button button;
String test1;
@Override
protected void onCreate(Bundle savedInstanceState) {
// Your initialization code...
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
edit1= (EditText) findViewById(R.id.edit1);
edit2= (EditText) findViewById(R.id.edit2);
button=(Button) findViewById(R.id.button);
TextWatcher watcher = new LocalTextWatcher();
edit1.addTextChangedListener(watcher);
edit2.addTextChangedListener(watcher);
updateButtonState();
}
void updateButtonState() {
boolean enabled;
if(enabled = checkEditText(edit1)
&& checkEditText(edit2)){
button.setEnabled(enabled);}
}
}
private boolean checkEditText(EditText edit) {
return Integer.getInteger(edit1.getText().toString()) != null;
}
private class LocalTextWatcher implements TextWatcher {
public void afterTextChanged(Editable s) {
updateButtonState();
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
}
}}}
, 그것의 길이 경우 테스트 쉬울 텍스트가 0보다 큽니다. – VirtualTroll