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

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiangbing0125/article/details/45789913
文章标签: string textview
上一篇Android获取应用所占内存大小
下一篇android XMl Selector 图片背景点击和焦点获取样式
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭