Theme.AppCompat.Light.DarkActionBar - Ресурс не найден
Как правильно использовать библиотеку поддержки Android, потому что у меня есть эта ошибка в файле манифеста:
android:theme="@style/Theme.AppCompat.Light.DarkActionBar"
error: Error: No resource found that matches the given name
(at 'theme' with value '@style/Theme.AppCompat.Light.DarkActionBar').
AndroidManifest.xml /ttab line 39 Android AAPT Problem
Мой друг сделал это для меня ранее на другом компьютере, теперь я должен сделать это в одиночку. Пожалуйста, помогите мне:)
Я использую ADT
Мои styles.xml:
<resources>
<!--
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Light">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>
<style name="Theme.AppCompat.Light">
<!-- theme customizations here. -->
</style>
<style name="Theme.AppCompat.Light.DarkActionBar" parent="Theme.AppCompat.Light">
<!-- theme customizations here. -->
</style>
</resources>
Ответы
Ответ 1
В проекте "android-support-v7-appcompat" :
- Удалить "android-support-v7-appcompat" из проводника пакетов.
- Импортировать снова и проверить "Копировать в рабочее пространство"
- В свойствах → Android → в целевой сборке проекта снимите флажок Android 2.2 и проверьте Android 4.1.2.
- В пути сборки Java снимите флажок, если у вас есть библиотека .jar, и снимите флажки с Зависимости
В другой руке проект, который использует "android-support-v7-appcompat" :
- В свойствах → Android добавьте библиотеку, но снимите флажок "IsLibrary".
- В Android → Project build tarjet проверьте Android 4.0.
- В "Путь сборки Java" → Заказ и экспорт → Не отмечена библиотека .jar.
- Наконец, выполните "Проект → Очистить" оба проекта.
Ответ 2
Если вы используете Gradle, у вас возникла проблема с последней версией библиотеки совместимости.
Если в вашем build.gradle
файле с '+'
в конце есть следующее:
dependencies {
compile 'com.android.support:appcompat-v7:+'
}
то он может захватывать более позднюю версию библиотеки, чем вы хотите.
Изменение зависимости от:
dependencies {
compile 'com.android.support:appcompat-v7:18.0+'
}
может решить вашу проблему.
Ответ 3
Не могли бы вы попробовать
android:theme="Theme.AppCompat.Light.DarkActionBar"
вместо
android:theme="@style/Theme.AppCompat.Light.DarkActionBar"
Ответ 4
Я получал ту же ошибку при попытке создать новый проект андроида, и этот видео помог мне разрешить это.
Ответ 5
В файле зависимостей приложений проверьте, есть ли у вас зависимость
compile 'com.android.support:appcompatv[anything here]
или
implement 'com.android.support:appcompat[anything here]
удалите или прокомментируйте их, нажмите "лампочку" для автосообщений и выберите "добавить зависимость библиотеки".
нажатие на автозаполнение для appcompat
Прокрутите параметры первой версии appcompat. Библиотека будет добавлена под списком зависимостей. Переустановите приложение или отмените кеши и перезапустите
В одном случае это не сработало и идет в папку, содержащую проект, удалив файл .gradle и перезапустив Android Studio. Получил от Sneh Pandya ответ в https://reformatcode.com/code/android/error-while-gradle-sync