Android字数限制的EditText实现方案研究(2)

* 计算分享内容的字数,一个汉字=两个英文字母,一个中文标点=两个英文标点 注意:该函数的不适用于对单个字符进行计算,因为单个字符四舍五入后都是1

*

* @param c

* @return

*/

privatelong calculateLength(CharSequence c) {

double len = 0;

for (int i = 0; i < c.length(); i++) {

int tmp = (int) c.charAt(i);

if (tmp > 0 && tmp < 127) {

len += 0.5;

} else {

len++;

}

}

return Math.round(len);

}

/**

* 刷新剩余输入字数,最大值新浪微博是140个字,人人网是200个字

*/

privatevoid setLeftCount() {

mTextView.setText(String.valueOf((MAX_COUNT - getInputCount())));

}

/**

* 获取用户输入的分享内容字数

*

* @return

*/

privatelong getInputCount() {

return calculateLength(mEditText.getText().toString());

}

}

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/5f1de38fe083b4a51576e5cc6a2f3107.html