Разница между представлением AppCompat и обычным представлением Android

В чем разница между компонентом представления AppCompat и стандартным/стандартным представлением?

Например, разница между AppCompatEditText и EditText, или между AppCompatButton и a Button.

Глядя на документы разработчика для android.support.v7.widget, компоненты представления AppCompat описываются как "tint aware", но это только разница, и что именно это делает?

Ответ 1

Когда вы используете Button или EditText, вы фактически используете AppCompatButton и AppCompatEditText. Из официальной документации AppCompatEditText.

Отредактируйте текст EditText. Это будет автоматически использоваться при использовании EditText в ваших макетах. Вам нужно будет только вручную использовать этот класс при написании пользовательских представлений

Ответ 2

В чем разница между компонентом представления AppCompat и стандартного/стандартного представления?

AppCompat View Component поддерживает совместимые функции на старой версии платформы.

Компоненты представления AppCompat описываются как "оттенок", но это единственное различие, и что именно это делает?

Хотя большая часть отличий AppCompatView заключается в том, что он поддерживает динамический оттенок и фоновый оттенок. Знание оттенков - не единственное отличие, например, у каждого AppCompatView свои собственные отличия.

  • AppCompatEditText vs EditText

Разрешает атрибут styleAllCaps до Gingerbread.

  • AppCompatSpinner vs Spinner

Настройка всплывающей темы с помощью popupTheme.

Вы можете выкопать каждую разницу в Android docs.

Однако, как говорит Sid/Docs, вам не нужно указывать это на своих макетах, так как оно автоматически преобразуется в представления AppCompat. Но если вы хотите создать собственное представление, вы должны использовать AppCompat Views, иначе эта ошибка будет происходить.