TextView无法正确显示特殊字符

时间:2018-07-08 14:53:29

标签: android string character-encoding textview

这似乎是一个重复的问题,但我从其他类似的人那里读了一些答案,没有结果。

问题 我的应用程序加载已安装应用程序的列表,然后显示该列表并执行它所做的工作(不相关)。在已安装的应用程序列表中,我注意到特殊字符存在问题,尤其是“ µTorrent”应用程序。 µ字符显示为M,因此在列表中此应用程序将称为mTorrent(?!)。

这是我加载应用名称的方式

        List<ResolveInfo> resolveInfos= pm.queryIntentActivities(mainIntent, 0);
for(ResolveInfo info : resolveInfos) {
    String name = info.activityInfo.name; // here it is!
}

到目前为止我尝试过的事情

  • 使用Roboto字体
  • 新的String(“ µTorrent” .getBytes(“ origin_charset”),“ destination_charset”),具有原始/目标字符集的各种组合
  • URLEncoder.encode(“ µTorrent”,“ utf-8”)

注意:即使我在上面写了“ µTorrent”,我也在使用String变量(用于检查结果)

问题: 如何在TextView中正确显示任何特殊字符?

2 个答案:

答案 0 :(得分:0)

问题似乎是由于应用标签被转换为大写字母,一些大写字母不等价的字符被转换为其他方式,例如M中的µ

答案 1 :(得分:-1)

您将必须参考此utf-8 characters并从您的strings.xml中使用它们。

样品

HTTP Error 404: Not Found