String 字符串截取拼装换行 接近Textview换行问题
变态需求 Textview只能显示10个英文字符 多的换行显示 默认android 的Textview只能这是宽度强制换行,要不就是在字符串里面有换行符"/n" 但要是给String 无换行符呢?
这里就需要自己判断的修改下
// 设置名称
String test = "abcdefg12345678"
TextView textView =(TextView) findViewById(R.id.tv_test);textView.setText(toMultiLine(test, 3));
/**字符串截取 换行
* @param str
* @param len
* @return
*/
private String toMultiLine(String str, int len) {
char[] chs = str.toCharArray();
StringBuffer sb = new StringBuffer();
for(int i = 0, sum = 0; i < chs.length; i++) {
sum += chs[i] < 0xff ? 1 : 2;
sb.append(chs[i]);
if(sum >= len) {
sum = 0;
sb.append("
");
}
}
return sb.toString();
}
结果:
abc
def
g12
345
678
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: cocos内存泄漏以及优化问题
- 下一篇: stm32f10x.h 头文件解析