Отображение всех символов Unicode в TextView

Есть ли способ показать все символы Unicode в моем TextView, на моем телефоне?

Я пробовал специальные символы, такие как '\ u0279', и я получаю что-то вроде box (по умолчанию char). Это основано на настройках l10n и i18n?

Ответы

Ответ 1

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

Поместите шрифт, который будет поддерживать ваш язык в папке с ресурсами. В этом случае я использовал TAU_BHON.TTF

Ответ 2

Обычно это происходит из-за используемого шрифта, по умолчанию не поддерживает/не реализовал все символы Unicode, вам нужно использовать полнофункциональный шрифт, например DejaVuSans. ttf

@sakthi показывает образец, который должен работать без проблем, проверьте, поддерживает ли ваша версия Android.

Ответ 3

Попробуйте этот код:

String str = "\u00F6";

System.out.println("new value-" + str);

Вы получите:

new value-ö

Вот пример проекта Android, который я создал для проверки функции:

Файл 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>

Экранный снимок:

enter image description here