2013-10-24 4 views
1

Так что у меня styles.xml следующим:Где я должен помещать стиль текста в свои ресурсы?

.... 
<style name="TextAppearance.CustomTheme.Widget.ActionBar.Menu" 
       parent="android:TextAppearance.Holo.Widget.ActionBar.Menu"> 
    <item name="android:textSize">@dimen/text_size</item> 
    <item name="android:textStyle">{text_style}</item> 
</style> 
... 

Обратите внимание, что text_size определяется в dimens.xml файле. I требуется, чтобы иметь значение textStyle, сохраненное в другом файле, также похоже на textSize, но я не знаю, куда его поместить. Кажется, что не существует типа ресурса для текстового стиля (обычный, полужирный, курсив).

Причина, по которой я должен иметь его в другой файл, так что этот способ я могу иметь только один styles.xml, а затем несколько других файлов (dimens.xml, colors.xml, и т.д.), которые изменяются в зависимости от размера экрана и т.д. Так что конец с только один styles.xml on/values, а затем несколько папок значений (\ values-sw480dp, \ values-sw720dp) с различными dimens.xml, colors.xml и т. д. файлами.

Кроме того, я попытался ссылаться на строку, как показано ниже, но это неверно.

<item name="android:textStyle">@string/text_style</item> 

ответ

2

Видимо, это невозможно. Глядя на TextView's textStyle attribute ссылки он выглядит, что он не принимает ссылку, так как документация для этого атрибута не указывается следующее, как и другие атрибуты делают:

Это также может быть ссылка на ресурс (в form "@ [package:] type: name") или атрибут темы (в форме "? [package:] [type:] name"), содержащий значение этого типа.

Он содержит только константы, которые он принимает (и их комбинацию с |).

Смежные вопросы