在TextView中显示所有的Unicode字符

有什么办法在我的手机上显示我的TextView的所有Unicode字符?

我已经尝试了特殊字符,如'\ u0279',我得到像框(默认字符)的东西。 这是基于l10n和i18n的设置?

Solutions Collecting From Web of "在TextView中显示所有的Unicode字符"

tv=(TextView)findViewById(R.id.textView1); Typeface font= Typeface.createFromAsset(getAssets(), "TAU_BHON.TTF"); tv.setTypeface(font); 

将支持您的语言的字体放置在assets文件夹中。在这种情况下,我使用了TAU_BHON.TTF

这通常是因为使用的字体 ,默认的不支持/已经实现所有的Unicode字符 ,你需要使用像DejaVuSans.ttf全function的字体

@sakthi显示了一个应该没有问题的示例,检查你的Android版本是否支持它

试试这个代码:

 String str = "\u00F6"; System.out.println("new value-" + str); 

你会得到:

 new value-ö 

这里是我创build的一个示例Android项目来检查function:

Java文件:

 package com.testd; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class Main extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); String str = "\u00F6"; TextView tv = (TextView) findViewById(R.id.a); tv.setText("sajklasdklfjasdf " + str ); } } 

XML文件:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/a" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout> 

屏幕截图:

在这里输入图像说明