Не удалось загрузить AppCompat ActionBar с неизвестной ошибкой в ​​Android Studio

153

Ниже мой XML-файл. В предварительном просмотре есть две ошибки: «Не удалось загрузить AppCompat ActionBar с неизвестной ошибкой» и «Не удалось создать более одного класса». Как всегда я могу запустить приложение. Но приложение вылетает и в Logcat ошибок не отображается.

Это мой предварительный снимок экранавведите описание изображения здесь

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:openDrawer="start">


    <include
        layout="@layout/app_bar_main"
        android:layout_width="match_parent"
        android:layout_height="506dp" />

    <LinearLayout
        android:id="@+id/layout_main"
        android:orientation="vertical"
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:weightSum="1"
        tools:context=".Activity.MainActivity">


    <LinearLayout
        android:id="@+id/main_layout"
        android:orientation="vertical"
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="0.7"
        tools:context=".Activity.MainActivity">

        <!-- our tablayout to display tabs  -->
        <android.support.design.widget.TabLayout
            android:id="@+id/tabLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="50dp"
            app:tabMode="scrollable"
            app:tabSelectedTextColor="@color/colorBlack"
            app:tabTextColor="@color/colorWhite"
            android:background="@color/colorOran"
            android:minHeight="?attr/actionBarSize"
            />

        <!-- View pager to swipe views -->
        <android.support.v4.view.ViewPager
            android:id="@+id/pager"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

    </LinearLayout>

        <LinearLayout
            android:id="@+id/ll"
            android:layout_width="match_parent"
            android:layout_height="64dp"
            android:layout_alignParentBottom="true"
            android:background="#ffffff"
            android:orientation="horizontal"
            android:layout_weight="0.3"
            android:weightSum="4"
            tools:layout_editor_absoluteX="8dp"
            android:layout_marginBottom="8dp"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true">

            <ImageView
                android:id="@+id/btn_home"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:src="@drawable/ta_home_icon"
                android:background="@color/colorOran"
                android:layout_marginRight="1dp"
                android:scaleType="fitCenter"/>

            <ImageView
                android:id="@+id/btn_new"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:src="@drawable/ta_todaydeals_icon"
                android:background="@color/colorOran"
                android:layout_marginRight="1dp"
                android:scaleType="fitCenter"/>

            <ImageView
                android:id="@+id/btn_fav"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:src="@drawable/ta_fav_icon"
                android:background="@color/colorOran"
                android:layout_marginRight="1dp"
                android:scaleType="fitCenter"/>

            <ImageView
                android:id="@+id/btn_auth"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:src="@drawable/ta_franchie_icon"
                android:background="@color/colorOran"
                android:scaleType="fitCenter"
                android:layout_marginRight="1dp"
                />

        </LinearLayout>

    </LinearLayout>


    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer" />


</android.support.v4.widget.DrawerLayout>

Ниже appbar_main

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.jeyashri.kitchen.jeyashriskitchen.Activity.MainActivity">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">


        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="@color/colorOran"
            app:popupTheme="@style/AppTheme.PopupOverlay">

            <ImageView
                android:id="@+id/app_logo"
                android:layout_width="80dp"
                android:layout_height="match_parent"
                android:src="@drawable/img"/>

            <ImageView
                android:id="@+id/btn_social"
                android:layout_width="75dp"
                android:layout_height="35dp"
                android:layout_marginRight="1dp"
                android:src="@drawable/share_icon" />

    </android.support.v7.widget.Toolbar>

    </android.support.design.widget.AppBarLayout>

    <include layout="@layout/content_main" />


</android.support.design.widget.CoordinatorLayout>
Сива
источник
Попробуйте поменять версию на андроид.
Четан меха
попытался изменить версию .. Не помогает
Шива
Для решения без изменения библиотеки appcompat см .: stackoverflow.com/questions/44223687#45002903
Mr-IDE,
Возможные дубликаты проблем с рендерингом
Shayan
Убедитесь, что ваша версия Gradle обновлена.
Рамиз Ансари

Ответы:

323

Решение этой проблемы зависит от используемой вами версии библиотеки поддержки Android:

Поддержка библиотеки 26.0.0-beta2

Эта версия библиотеки поддержки Android имеет ошибку, вызывающую упомянутую проблему

В вашем файле сборки Gradle используйте:

compile 'com.android.support:appcompat-v7:26.0.0'

с участием:

buildToolsVersion '26.0.0' 

и

classpath 'com.android.tools.build:gradle:3.0.0-alpha8'

теперь все должно работать нормально.


Библиотека версия 28 (бета)

Эти новые версии, похоже, снова страдают от подобных трудностей.

В вашем res/values/styles.xmlизменить AppThemeстиль из

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

в

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">

(обратите внимание на добавленное Base.)

Или альтернативно понизьте библиотеку, пока проблема не будет исправлена:

implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
Дебашис Чоудхури
источник
23
Спасибо! это сделал Кстати, для нас Android-разработчик newbiew говорит, что изменения должны быть внесены в файл build.gradle (модуль: приложение)
Джулиан Борреро,
2
Я только начал сегодня. Я сталкивался с этой проблемой. Этот ответ просит что-то скомпилировать, о чем я понятия не имею, так как он не объясняет, как это сделать. Но ответ с помощью tanchap решает проблему. Он / она четко объяснил, что делать. Это была простая задача, более свежая, как я. Поэтому я думаю, что это должен быть ответ.
Буддика Арияратне
1
Ошибка новичка для меня! Когда я настраивал свой новый проект, я забыл снять флажок «Обратная совместимость» (мне не нужна обратная совместимость). Я заново создал проект с этим непроверенным и все хорошо!
Дуг Дж. Хурас,
7
Просто любопытно: как можно придумать что-то подобное? Я бы никогда не догадался ...
BareMetalCoder
3
Спасибо, но почему эта ошибка все еще существует в 2018 году? Для новичка Android я не могу создать проект "Hello World" из-за этой ошибки.
Searene
276

нашел его на этом сайте, он работает на меня. Измените /res/values/styles.xml из:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
</style>

чтобы:

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
</style>
tanchap
источник
21
Можете ли вы объяснить, почему это работает? Это поможет людям, которые вернутся к этому в будущем.
Томас Смит
13
1 марта 2018 года подтвердил, что это исправило мою проблему.
Джон Риселвато
Просто отметьте, что, если это не сработает после добавления «Base» в вашу AppTheme, просто перейдите к опции Theme в верхней части вашего предварительного просмотра макета, нажмите на Menifest Themes слева и затем выберите вашу AppTheme. Это автоматически обновит макет.
Халед Саиф
4
Это также сработало для меня. Кто-нибудь знает, зачем это нужно? Я был вдали от Android в течение нескольких лет, и я не могу поверить, сколько я должен был сделать, чтобы запустить простой проект. (Это включает в себя попытку сборки / запуска некоторых примеров проектов, предоставляемых Android Studio.)
pdoherty926
2
16 июля 2018 года у меня тоже работает с com.android.support:appcompat-v7:28.0.0-alpha3.
CoolMind
26

Июнь 2018 г. Исправлена ​​проблема с использованием другой версии приложения. Используйте эти коды на зависимости вашего проекта ...

В build.gradle (Module: app) добавьте эту зависимость

implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'

Удачного кодирования ... :)

Абхишек
источник
4
Это снова сломано в бета-версии :(
nifCody
17

Способ 1:

разместить /res/values/styles.xml

+ Изменить

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

к

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">

Способ 2:

Изменить файл шаблона (местонахождение: android-studio/plugins/android/lib/templates/gradle-projects/NewAndroidModule/root/res/values/styles.xml.ftl)

+ Изменить

backwardsCompatibility!true>Theme.AppCompat<#else><#if

к

backwardsCompatibility!true>Base.Theme.AppCompat<#else><#if

Смотрите решение на YouTube

Решение

shellhub
источник
17

У меня также была эта проблема, и она решена как строка изменения из res / values ​​/ styles.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

в

  1. <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
  2. <style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">

оба решения работали

Мухаммед Азам
источник
Удачного кодирования :)
Мухаммед Азам
6

Открыть режим предварительного просмотра

перейдите по ссылке ниже, чтобы решить проблему

Исправление - Проблемы с рендерингом Следующие классы не могут быть найдены: android.support.v7.internal

Перейти к appTheme ----> выбрать тему Holo ---> обновить

https://www.youtube.com/watch?v=4MxBnwpcUjA

Упендранат Редди
источник
1
просто изменив тему с панели предварительного просмотра на другую, отличную от AppTheme, работала
Qasim
Это сработало для меня, просто изменив тему, кроме AppTheme
девушка
6

Столкнулся с такой же проблемой в Android Studio 3.1.3

Просто зайдите в файл style.xml

и заменить название темы

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

с участием

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">

Затем очистите и пересоберите проект. Это решит ошибку.

М-р Накибул Хасан
источник
5

Заменить implementation 'com.android.support:appcompat-v7:28.0.0-beta01' на

implementation 'com.android.support:appcompat-v7:28.0.0-alpha1' 

в build.gradle (модуль: приложение). Это исправило мою красную метку в Android Studio 3.1.3

Kashif
источник
Великолепное счастливое кодирование
Кашиф
Есть ли способ изменить это на уровне приложения? Так что это не должно быть воспроизведено для каждого проекта, который у меня есть.
TheGeeko61
4

в android 3.0.0 canary 6 вы должны изменить все 2.6.0 beta2 на beta1 (appcompat, design, supportvector)

Реза Рахмад
источник
4

Попробуй это:

Просто измените:

compile 'com.android.support:appcompat-v7:26.0.0-beta2'

чтобы:

compile 'com.android.support:appcompat-v7:26.0.0-beta1'

Ссылка

В.Я.
источник
3

Это работает для меня, я сделал следующие изменения в Style.xml

Измените следующий код:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

С участием

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
dev_mg99
источник
2

Используйте это:

implementation 'com.android.support:appcompat-v7:26.0.0-beta1'
implementation 'com.android.support:design:26.0.0-beta1'

вместо того

implementation 'com.android.support:appcompat-v7:26.0.0-beta2'
implementation 'com.android.support:design:26.0.0-beta2'

В моем случае это сняло проблему рендеринга.

Викаш Сингх
источник
1

Это минимальная конфигурация, которая решает проблему.

использовать:

dependencies {
    ...
    implementation 'com.android.support:appcompat-v7:26.1.0'
    ...
}

с участием:

 compileSdkVersion 26
 buildToolsVersion "26.0.1"

и в файл build.gradle, расположенный внутри корня проекта:

buildscript {
    ...
    ....
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        ...
        ...
    }
}
Jorgesys
источник
0

Я также столкнулся с той же проблемой. Ничто, как смена темы из окна предварительного просмотра макета, не помогло мне.

Что помогло мне добавить это Appthemeв styles.xml:

dependencies {
    implementation 'com.android.support:appcompat-v7:27.0.2'
    implementation 'com.android.support:design:27.0.2'
}

Тем не менее он выдавал мне ошибку: «не удается разрешить виджет символа ... координирующий вывод». Затем я обновил свой build.gradle(app)с:

dependencies {
    implementation 'com.android.support:appcompat-v7:27.0.2'
    implementation 'com.android.support:design:27.0.2'
}

Еще кое-что:

compileSdkVersion 27
targetSdkVersion 27
Ану Бхалла
источник
0

У меня тоже была эта проблема с implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'.

Решение для меня было пойти File-> Invalidate Caches / Restart-> Invalidate-> Close Project-> Удалить проект из окна проекта -> Open Project(из окна проекта).

SnuKies
источник