messageContentEditText.addTextChangedListener(new TextWatcher() {            @Override            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {            }            @Override            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {            }            @Override            public void afterTextChanged(Editable s) {                int nSelStart = 0;                int nSelEnd = 0;                boolean nOverMaxLength = false;                nSelStart = messageContentEditText.getSelectionStart();                nSelEnd = messageContentEditText.getSelectionEnd();                nOverMaxLength = (s.length() > MAX_MESSAGE_CHAR_LENGTH) ? true : false;                if (nOverMaxLength) {                    Toast.makeText(MessageSendActivity.this,                            "不能超过" + MAX_MESSAGE_CHAR_LENGTH + "字符!",                            Toast.LENGTH_SHORT);                    s.delete(nSelStart - 1, nSelEnd);                    messageContentEditText.setTextKeepState(s);//请读者注意这一行,保持光标原先的位置,而 mEditText.setText(s)会让光标跑到最前面,                    //就算是再加mEditText.setSelection(nSelStart) 也不起作用                }                charLeftTextView.setText("剩余:" + (MAX_MESSAGE_CHAR_LENGTH - messageContentEditText.getText().length()));            }        });

更多相关文章

  1. android 限定 EditText字符输入个数
  2. android 內存等使用情況
  3. greendao接入sql和android cursor的简单应用
  4. 【android】解决设置ImageView的scaletype为centerCrop后padding
  5. iOS和Android的兼容 (一)
  6. 修改EditText的光标颜色
  7. 【Android】EditText的特殊属性介绍
  8. 【android】解决设置ImageView的scaletype为centerCrop后padding
  9. Android(安卓)EditText加入图片混编显示

随机推荐

  1. Android获取手机信息
  2. 2013.01.03 (2)——— android开发实例之仿
  3. Android通过http协议POST传输方式
  4. 仿照Android的池化技术
  5. Android(安卓)- 设置带滚动条的TextView
  6. Android(安卓)源码 修改系统默认横屏
  7. Android(安卓)Bluetooth Code
  8. Android(安卓)中使用自定义字体的方法
  9. android SQLite
  10. Android(安卓)studio gradle 生成字段属