Intereting Posts
Как установить блок для Paint.setTextSize () Как я могу отправить приложение для Android, которое я разрабатываю для кого-то по электронной почте? Разница между FlurryAgent.logEvent и FlurryAgent.onEvent Как использовать Legacy Apache в Eclipse для поддержки Android M Могу ли я запустить службу из приложения # onCreate ()? Фильтр яркости экрана Выбранный обратный вызов Spinner активируется дважды после вращения, если выбрана ненулевая позиция Разрешить пользователю выбирать камеру или галерею для изображения Как ограничить пользователя на DatePicker, вы можете выбрать только дату до сегодняшнего дня – 18 лет Как добавить водяной знак в виджет Android EditText? Android: Как нарисовать бесплатно поверх всего (любой активности) Android Add Native support – неразрешенные jni.h, android / log.h и т. Д. Как загрузить изображение из галереи в android Android – Учебник по блокноту – жизненный цикл – некоторые работы выполняются дважды? Ассоциированное местоположение Geofire с записью Firebase

Каковы различия между R.styleable, R.style и R.attr?

Каковы различия между R.styleable, R.style и R.attr? Я нашел TextAppearance во всех этих трех классах.

Solutions Collecting From Web of "Каковы различия между R.styleable, R.style и R.attr?"

R.style имеет все стили, предоставленные андроидом (включая все предоставленные темы android). Например, Theme.Translucent , Widget.AbsListView .

R.attr есть все attrs андроид (который может быть установлен для просмотра или окна). Например, layout_width может быть установлен для просмотра, windowIsFloating может быть установлен в окно.

R.styleable имеет все 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. И если вы озадачены тем, что декларируется в стиле, проверьте: Разница между объявлением и стилем

R.style используется для определения тем (настраивать значения по умолчанию или конкретные наборы стилей для повторного использования элементов в ваших макетах).

R.styleable содержит индивидуальные attrs. R.attr используется для определения атрибутов для пользовательских представлений. Предположим, вы создали свое собственное пользовательское представление под названием CardView, и оно занимает 2 строки, а затем создает его макет на основе размера этих строк. Вы можете установить их как атрибуты, назначенные в ваших XML-макетах, через R.attr ( подробнее / более подробное объяснение здесь ).