Android textview没有显示正确的字符

时间:2014-05-24 11:05:20

标签: java android textview

所以我有一个包含几个字符串的对象。此字符串中的文本有时包含特殊字符,如ë,ô,é等......

现在,当我在TextView中设置文本以显示字符串内部的内容时,它确实会显示文本但是用?替换所有特殊字符?

任何想法如何解决这个问题?

请注意,textView用作列表视图的列表项,数据是从.csv文件中提取的。

<?xml version="1.0" encoding="utf-8"?>

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#DBBD59"
android:textColor="#666666"
android:gravity="center"
android:textSize="10pt">

</TextView>

2 个答案:

答案 0 :(得分:2)

这些是您的设备不支持的拉丁字体 所以使用自定义latinfont ttf来显示这些字体。

TextView textView = (TextView) rowView.findViewById(R.id.yourtextviewfromXml);
Typeface font = Typeface.createFromAsset(getContext().getAssets(), "latin_font_ttf_file.TTF");
textView.setText("ë,ô, é");
textView.setTypeface(font);

注意:将ttf文件保存在assets文件夹中 这篇文章可以帮助您How to display Latin-1 characters in Android app

答案 1 :(得分:0)

尝试用他们的unicode替换你的特殊字符。

例如将é替换为&amp; \#223

有关详细信息,请参阅此http://www.codetable.net/unicodecharacters