Подтвердить что ты не робот

Атрибут insetForeground уже определен

после обновления до нового

com.android.support:design:22.2.0

Я получил эту ошибку:

"атрибут insetForeground уже определен"

Имейте в виду, что я использую @romannurik ScrimInsetsFrameLayout.java

4b9b3361

Ответ 1

просто измените

insetForeground attribute

в вашем attrs.xml для другого имени

Ответ 2

Чтобы уточнить ответ Омара,

В библиотеке поддержки дизайна Android был представлен NavigationDrawer, который используется вместе с DrawerLayout, чтобы обеспечить средства реализации навигации и т.д. См. здесь:

Библиотека поддержки дизайна Android

NavigationDrawer расширяет ScrimInsetsFrameLayout, который был внесен в библиотеку.

Ошибка в вопросе возникает, потому что атрибут insetForeground был определен дважды. Однажды контекст библиотеки и один раз, когда в проект была внесена копия ScrimInsetsFrameLayout.

Параметры:

  • Переименуйте свойство, определенное в проекте (как предлагает Омар) продолжая использовать локальную копию ScrimInsetsFrameLayout.
  • Удалите локальную копию ScrimInsetsFrameLayout и используйте ее в библиотеки.
  • Удалите локальную копию ScrimInsetsFrameLayout и используйте NavigationDrawer.

Ответ 3

У вас есть этот класс ScrimInsetsFrameLayout.java в ваших файлах, тогда как Google уже поместил его в библиотеку дизайна поддержки Google Android. Замените ScrimInsetsFrameLayout на android.support.design.widget.NavigationView

Ответ 4

Или вы можете переименовать insetForeground в значения /attr.xml на insetForeground2 или что-то