比如最大10个字符,若超过10个,则显示9或者8个字符加省略号.
啊啊啊啊啊
哎哎哎啊...
哎哎哎啊a...
aaaaaaaa...
public class CalTextLength {
public static String handleText(String str, int maxLen) {if (TextUtils.isEmpty(str)) {return str; }int count = 0; int endIndex=0; for (int i = 0; i < str.length(); i++) {char item = str.charAt(i); if (item < 128) {count = count + 1; } else {count = count + 2; }if(maxLen==count || (item>=128 && maxLen+1==count)){endIndex=i; }}if (count <= maxLen) {return str; } else {return str.substring(0, endIndex) + "..."; }}
}
private static final intmaxLen=12; //名字最大字符数
tring name=CalTextLength.handleText(simpleContact.getName(),maxLen);holder.tv_name.setText(name);