Android EditText限制输入字数的方法
本文实例讲述了AndroidEditText限制输入字数的方法。分享给大家供大家参考,具体如下:
//新浪微博字数限制
privatestaticfinalintWEIBO_CONTENT_LENGTH_LIMITED=140;
//添加微博内容edittext
mInputEditText.addTextChangedListener(mTextWatcher);
privateTextWatchermTextWatcher=newTextWatcher(){
privateinteditStart;
privateinteditEnd;
publicvoidafterTextChanged(Editables){
editStart=mInputEditText.getSelectionStart();
editEnd=mInputEditText.getSelectionEnd();
//先去掉监听器,否则会出现栈溢出
mInputEditText.removeTextChangedListener(mTextWatcher);
while(mInputEditText.getText().toString().length()>WEIBO_CONTENT_LENGTH_LIMITED){
s.delete(editStart-1,editEnd);
editStart--;
editEnd--;
}
mInputEditText.setText(s);
mInputEditText.setSelection(editStart);
mInputEditText.addTextChangedListener(mTextWatcher);
setPromptContent();
}
publicvoidbeforeTextChanged(CharSequences,intstart,intcount,intafter){
}
publicvoidonTextChanged(CharSequences,intstart,intbefore,intcount){
}
};
/**
*refreshpromptcontentnumbers
*/
privatevoidsetPromptContent(){
intcontentLength=mInputEditText.getText().toString().length();
mInputEditText.setSelection(contentLength);
intlimitedLength=WEIBO_CONTENT_LENGTH_LIMITED-contentLength;
Stringprefix=getResources().getString(R.string.weibo_content_numbers_prefix);
Stringsuffix=getResources().getString(R.string.weibo_content_numbers_suffix);
StringpromptContentNumbers=prefix+limitedLength+suffix;
SpannableStringBuilderstyle=newSpannableStringBuilder(promptContentNumbers);
style.setSpan(newForegroundColorSpan(Color.RED),prefix.length(),promptContentNumbers.length()-suffix.length(),
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
mPromptContentNumbers.setText(style);
}
更多关于Android控件相关内容感兴趣的读者可查看本站专题:《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
热门推荐
10 祝女儿简短祝福语大全
11 大学新年祝福语简短创意
12 元旦适合的祝福语简短
13 朋友出远门祝福语简短
14 初六简短的祝福语
15 祝男孩生日祝福语简短
16 同事调离的祝福语简短
17 拜年红包的祝福语简短
18 妈妈生日祝福语简短励志