zoukankan      html  css  js  c++  java
  • android 双向文字问题

      双向文字就是一个字符串中包含了两种文字,既包含从左到右的文字又包含从右到左的文字。

      大多数文字都是从左到右的书写习惯,比如拉丁文字(英文字母)和汉字,少数文字是从右到左的书写方式比如阿拉伯文(ar)跟希伯来文(he)。对于需要国际化支持的应用来说,由于阅读习惯的不同在页面排版和布局中会给开发人员带来麻烦。这种情况多数出现在从右到左的文字中,比如字符串中出现阿拉伯文、英文字母、数字以及标点符号。

      遇到的问题:android 某个页面显示title为: username + "唱的歌" ,当用户名为阿拉伯文时,textview显示的字符串就会变成“唱的歌username”。很神奇,是因为阿拉伯文是从右往左的,所以才会有显示的问题。

      解决方法:http://developer.android.com/reference/android/support/v4/text/BidiFormatter.html

    StringBuilder builder = new StringBuilder();
            return builder
                    .append(BidiFormatter.getInstance().unicodeWrap(mTitleName))
                    .append("唱的歌").toString();
    

      这样就OK了。

  • 相关阅读:
    HDU2201
    HDU2202 凸包
    HDU 4353 几何
    POJ2031 prim
    HDU1392 凸包
    HDU1689 BFS+最小奇数环
    设计模式 [转]
    Mining Massive Data Sets PPT
    C++编程命名规范 [转]
    static_cast与dynamic_cast转换 [转]
  • 原文地址:https://www.cnblogs.com/aprz512/p/4988809.html
Copyright © 2011-2022 走看看