Раскраска арабского текста в Textview выглядит отдельно - PullRequest
0 голосов
/ 29 декабря 2018

Я пытаюсь раскрасить арабский текст в textview с помощью SpannableString , когда я использую этот шрифт , и затем я получаю как отдельный или не соединяющийся, который я отмечаю красным как изображение вниже.

enter image description here

Изображение без Spanable, как на изображении ниже (смотреть подключенным).

enter image description here

Это мой код:

SpannableString wordtoSpan = new SpannableString("تَنْكِحَ");
wordtoSpan.setSpan(new ForegroundColorSpan(Color.BLUE), 0, 6, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

Typeface typeFace = Typeface.createFromAsset(getAssets(), "fonts/qalammajeed.ttf");
textView.setTypeface(typeFace);
textView.setText(wordtoSpan);

У меня вопрос, есть ли идеи для раскраски арабского текста и получения не отдельных текстов.

Заранее спасибо.

1 Ответ

0 голосов
/ 29 декабря 2018

enter image description here Вы раскрашиваете 6 символов.Каждое арабское письмо считается двумя по сравнению с английским.Это должно решить проблему:

wordtoSpan.setSpan(new ForegroundColorSpan(Color.BLUE), 0, 8, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

Что касается вашего комментария ниже, код, кажется, применяет шрифт ко всему тексту.Единственная проблема состоит в том, что вы не установили персидский или арабский язык на свой мобильный.Смотрите мой скриншот телефона, который выглядит нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...