Ответ 1
R.style
содержит все стили и андроид (включая все предоставленные темы android). Например, Theme.Translucent
, Widget.AbsListView
.
R.attr
содержит все attrs android (которые могут быть установлены для просмотра или окна). Например, layout_width
можно установить для просмотра, windowIsFloating
можно установить в окно.
R.styleable
имеет все атрибуты определенного вида или окна, которые предоставил андроид И может быть определен в стиле. Например, FrameLayout_Layout_layout_gravity
: layout_gravity может быть в стиле FrameLayout, Window_windowIsFloating
: флаг, указывающий, является ли это плавающим окном.
Чтобы ответить на ваш вопрос, TextAppearance - это атрибут (R.attr) И он объявлен styleable, attrs.xml:
<attr name="textAppearance" format="reference" />
<declare-styleable name="TextViewAppearance">
<!-- Base text color, typeface, size, and style. -->
<attr name="textAppearance" />
</declare-styleable>
TextAppearance также является Theme/Style (тема - это просто стиль), styles.xml:
<style name="TextAppearance">
<item name="android:textColor">?textColorPrimary</item>
<item name="android:textColorHighlight">?textColorHighlight</item>
<item name="android:textColorHint">?textColorHint</item>
<item name="android:textColorLink">?textColorLink</item>
<item name="android:textSize">16sp</item>
<item name="android:textStyle">normal</item>
</style>
На всякий случай вы не понимаете, что такое "?" означает: Вопросительный знак (?) в атрибутах XML для Android И в случае, если вас озадачило то, что объявлено в стиле, проверьте: Разница между объявлением и стилем