欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android EditText限制输入字数的方法

程序员文章站 2024-02-19 11:45:18
本文实例讲述了android edittext限制输入字数的方法。分享给大家供大家参考,具体如下: //新浪微博字数限制 private static fina...

本文实例讲述了android edittext限制输入字数的方法。分享给大家供大家参考,具体如下:

//新浪微博字数限制
private static final int weibo_content_length_limited = 140;
//添加微博内容edittext
minputedittext.addtextchangedlistener(mtextwatcher);
private textwatcher mtextwatcher = new textwatcher() {
    private int editstart;
    private int editend;
    public void aftertextchanged(editable s) {
      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();
    }
    public void beforetextchanged(charsequence s, int start, int count, int after) {
    }
    public void ontextchanged(charsequence s, int start, int before, int count) {
    }
};
/**
* refresh prompt content numbers
*/
private void setpromptcontent() {
  int contentlength = minputedittext.gettext().tostring().length();
  minputedittext.setselection(contentlength);
  int limitedlength = weibo_content_length_limited - contentlength;
  string prefix = getresources().getstring(r.string.weibo_content_numbers_prefix);
    string suffix = getresources().getstring(r.string.weibo_content_numbers_suffix);
    string promptcontentnumbers = prefix + limitedlength + suffix;
    spannablestringbuilder style = new spannablestringbuilder(promptcontentnumbers);
    style.setspan(new foregroundcolorspan(color.red), prefix.length(), promptcontentnumbers.length() - suffix.length(),
        spannable.span_exclusive_exclusive);
    mpromptcontentnumbers.settext(style);
}

更多关于android控件相关内容感兴趣的读者可查看本站专题:《android控件用法总结

希望本文所述对大家android程序设计有所帮助。