Почему textStyle italic не применяется в макете Android для других шрифтов, кроме serif? - PullRequest
12 голосов
/ 11 мая 2011

Ниже приведен простой фрагмент XML, для которого android:textStyle="italic" не применяется.

Если я удаляю android:textStyle="italic, появится текст.

<TextView
    android:text="row one"
    android:textSize="15pt"
    android:typeface="serif"
    android:textStyle="italic"
    android:textColor="#00abcd"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"/>

В приведенном выше android:textStyle="italic"работает только для android:typeface="serif", если я изменяю шрифт на sans, monospace или normal, android:text не отображается.

Почему это так?

Ответы [ 2 ]

4 голосов
/ 11 мая 2011

попробуйте сделать текст курсивом через файл строк, альтернатива этому может вам помочь

пример

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="Row_one"><i>Row one</i></string>
    <string name="Row_two"><i>Row two</i></string>
</resources>
1 голос
/ 09 октября 2013

Я вам не помогаю, но у меня такая же проблема при настройке стиля гарнитуры + в коде, но только на определенных устройствах Samsung, так что это может зависеть от устройства / производителя.

int supportedStyles = Typeface.create(TypeFace.DEFAULT, Typeface.BOLD_ITALIC).getStyle();
boolean italicSupported = (supportedStyles & Typeface.ITALIC) != 0;

italicSupported всегда равно true (за исключением Monospace), но на некоторых устройствах Samsung (Galaxy II, Note 8) текст не отображается курсивом. Nexus 7 в порядке, Archos 80 в порядке.

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