Изменение внешнего вида текста в стилях и темах для приложения для Android
Я пишу приложение для Android, и я хочу изменить тему своего приложения.
Мне удалось изменить цвет фона приложения, используя тему, но я стараюсь изменить внешний вид текста по умолчанию.
Это файл ресурсов styles.xml.
<resources>
<style name="QTheme" parent="android:Theme.Light">
<item name="android:windowBackground">@color/q_green</item>
<item name="android:colorBackground">@color/q_green</item>
<item name="android:textAppearance">@style/QText</item>
</style>
<color name="q_green">#008000</color>
<color name="white">#FFFFFF</color>
<style name="QText" parent="@android:style/TextAppearance.Medium">
<item name="android:textSize">20sp</item>
<item name="android:textColor">@color/white</item>
<item name="android:textStyle">bold</item>
<item name="android:textFont">Verdana</item>
</style>
</resources>
и просто проверить, это пример одного из моих TextViews. Я хочу использовать этот стиль в моем файле макета.
<TextView
android:id="@+id/txtDevice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/device"
/>
Кто-нибудь может увидеть, где я ошибаюсь?
Ответы
Ответ 1
Просто для полноты и полного кредита для Lusprog, теперь это файл ресурсов
<resources>
<style name="QTheme" parent="android:Theme.Light">
<item name="android:windowBackground">@color/q_green</item>
<item name="android:colorBackground">@color/q_green</item>
<item name="android:textViewStyle">@style/QText</item>
</style>
<color name="q_green">#008000</color>
<color name="white">#FFFFFF</color>
<style name="QText" parent="@android:style/TextAppearance.Medium">
<item name="android:textSize">20sp</item>
<item name="android:textColor">@color/white</item>
<item name="android:textStyle">bold</item>
<item name="android:typeface">sans</item>
</style>
</resources>
Также спасибо Падме Кумару за помощь шрифта.
Ответ 2
//удаляем эту строку из ваших стилей
нет такого атрибута
<item name="android:textFont">Verdana</item>
//вы можете дать шрифт для изменения стиля шрифта
<item name="android:typeface">monospace</item>
//для установки стилей
<TextView
android:id="@+id/txtDevice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
style="@style/QText"
android:text="@string/device"
/>