在Android開發應用的時候,文本編輯框中最多輸入140個字,經常會顯示還剩多少字以限制用戶輸入的字數,
EditText content;//定義一個文本輸入框
TextView hasnum;// 用來顯示剩余字數
int num = 140;//限制的最大字數
content = (EditText) findViewById(R.id.et_content);
hasnumTV = (TextView) findViewById(R.id.tv_num);
hasnumTV.setText(num+"");
下面為EditText文本框添加監聽
content.addTextChangedListener(new TextWatcher() {
private CharSequence temp;
private int selectionStart;
private int selectionEnd;
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
temp = s;
}
public void afterTextChanged(Editable s) {
int number = num - s.length();
hasnumTV.setText("" + number);
selectionStart = content.getSelectionStart();
selectionEnd = content.getSelectionEnd();
if (temp.length() > num) {
s.delete(selectionStart - 1, selectionEnd);
int tempSelection = selectionEnd;
content.setText(s);
content.setSelection(tempSelection);//設置光標在最後
}
}
});