Когда использовать AppCompatView и обычный Android-просмотр

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

Пример документации для AppCompatView:

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

Зачем использовать AppCompatView только для пользовательских представлений?

Существует аналогичный вопрос , но я ищу хорошее объяснение того, почему AppCompatView следует использовать только для пользовательских представлений.

Ответ 1

Некоторые материальные элементы дизайна, такие как материальная тема и пользовательские переходы, доступны только на Android 5.0 (API уровня 21) и выше. Тем не менее, вы можете проектировать свои приложения, чтобы использовать эти функции при работе на устройствах, которые поддерживают материальный дизайн и по-прежнему совместимы с устройствами, использующими предыдущие версии Android.

Que- > Почему AppCompatView должен использоваться только для пользовательских представлений.

Ответ → Простыми словами AppCompatView используется для поддержания совместимости. Если ваше приложение использует тему "Материал" как в Theme.Material, но не предоставляет альтернативную тему, ваше приложение не будет запускаться в версиях Android раньше 5.0.

Если макеты, которые вы разрабатываете в соответствии с руководящими принципами проектирования материалов, не используют никаких новых атрибутов XML, представленных в Android 5.0 (уровень API 21), они будут работать с предыдущими версиями Android. В противном случае вы можете предоставить альтернативные макеты. Вы также можете предоставить альтернативные макеты, чтобы настроить, как ваше приложение выглядит на более ранних версиях Android.

Создание обратного совместимого материала Дизайн приложений для Android намного проще с AppCompat, особенно когда вы понимаете, как его стили и темы работают вместе, чтобы динамически подкрасить пользовательский интерфейс.

С AppCompat вам следует потратить меньше времени на борьбу с активами и обратной совместимостью, а также больше времени на создание вашего приложения.

В настоящее время новые проекты, созданные через Android Studio, включают эту библиотеку по умолчанию.

Примечание. Эта библиотека зависит от библиотеки поддержки v4.

Ниже приведены ссылки для ссылок

Ответ 2

В ваших макетах вы должны использовать "обычные" представления, так как библиотека поддержки автоматически вводит код совместимости. Классы, предоставляемые библиотекой поддержки, необходимы только при написании нового пользовательского представления. В этом случае вам нужно расширить представления AppCompat, чтобы получить новые свойства (например, оттенок).