Я успешно добавил пользовательский шрифт (DroidSansFallBack.ttf), чтобы отображать символы хинди вместо блоков на Pre ICS. Все хорошо работает на 4. 1+ в любом случае.
Но порядок рендеринга неверен для Froyo и Gingerbread. Я понимаю, что это не разрешено http://code.google.com/p/android/issues/detail?id=4153
Каковы возможные обходные пути для исправления рендеринга? (Я не хочу использовать изображения)
EDIT: Пример,
दिन строка из значений - hi отображается как दनि
नक्षत्र отображается как नक् ष त र
(В 4. 1+ все отображается правильно)
Я не мог найти простую работу для исправления рендеринга повсюду. Поэтому, наконец, мне пришлось ограничить функцию языка хинди устройствами, имеющими версию Android версии 4.0 или новее.
У меня есть альтернативное решение для вашей проблемы, но не точное... использовать шрифт....
Typeface tf = Typeface.createFromAsset(getAssets(),"Hindi-SARAL1.TTF");
для नक्षत्र использование.......
TextView tv = (TextView) findViewById(R.id.textView1);
tv.setText("n95");
tv.setTypeface(tf);
и для दिन........ unicode значение не продолжается. Я дал пробел между & # и 2367;
tv.setText(Html.fromHtml("&# 2367;&# 2342;&# 2344;"));
tv.setTypeface(tf);