在布局中我們可以通過android:editable attribute編輯屬性來設置EditText小部件的狀態。但是用代碼編寫怎麼設置這個狀態呢?想實現的功能是在不同條件下都能編輯EditText小部件的狀態。
設置InputFilter會拒絕所有的改變,是一個很好的解決方案:
editText.setFilters(new InputFilter[] {
new InputFilter() {
public CharSequence filter(CharSequence src, int start,
int end, Spanned dst, int dstart, int dend) {
return src.length() < 1 ? dst.subSequence(dstart, dend) : "";
}
}
});