程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> String 字符串截取拼裝換行 接近Textview換行問題

String 字符串截取拼裝換行 接近Textview換行問題

編輯:C++入門知識

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("\n");
}
}
return sb.toString();
}

結果:

abc
def
g12
345
678

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved