Nie udało się załadować AppCompat ActionBar z nieznanym błędem w Android Studio


153

Poniżej znajduje się mój plik xml. W podglądzie są dwa błędy: „Nie udało się załadować AppCompat ActionBar z nieznanym błędem” i „Nie udało się zainstalować więcej niż jednej klasy”. Jak kiedykolwiek mogę uruchomić aplikację, ale aplikacja ulega awarii i w Logcat nie są wyświetlane żadne błędy.

To jest mój zrzut ekranu podgląduwprowadź opis obrazu tutaj

<?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>

Poniżej znajduje się 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>

Spróbuj zmienić wersję Androida.
chetan mekha

próbował zmienić wersję. Nie pomagam
Siva,

Aby uzyskać rozwiązanie bez zmiany biblioteki appcompat, zobacz: stackoverflow.com/questions/44223687#45002903
Mr-IDE

Możliwe duplikaty problemów z renderowaniem
Shayan

Upewnij się, że Twoja wersja Gradle jest aktualna.
Ramiz Ansari,

Odpowiedzi:


323

Rozwiązanie tego problemu zależy od używanej wersji biblioteki obsługi Androida:

Biblioteka wsparcia 26.0.0-beta2

Ta wersja biblioteki obsługi systemu Android zawiera błąd powodujący wspomniany problem

W pliku kompilacji Gradle użyj:

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

z:

buildToolsVersion '26.0.0' 

i

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

wszystko powinno teraz działać dobrze.


Wersja biblioteki 28 (beta)

Wydaje się, że te nowe wersje znowu mają podobne trudności.

W swoim res/values/styles.xmlzmodyfikuj AppThemestyl z

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

do

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

(zwróć uwagę na dodane Base.)

Lub alternatywnie obniż wersję biblioteki do czasu rozwiązania problemu:

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

23
Dziękuję Ci! to zrobiło to. BTW dla nas Android dev newbiew mówi, że zmianę należy wykonać w pliku build.gradle (moduł: aplikacja)
Julian Borrero

2
Właśnie dzisiaj zacząłem. Natknąłem się na ten problem. Ta odpowiedź prosi o skompilowanie czegoś, o czym nie mam pojęcia, ponieważ nie wyjaśnia, jak to zrobić. Ale odpowiedź tanchap rozwiązuje problem. Jasno wyjaśnił, co ma robić. To było proste zadanie dla świeższej osoby, takiej jak ja. Więc myślę, że to powinna być odpowiedź.
Buddhika Ariyaratne

1
Błąd Newb dla mnie! Kiedy konfigurowałem nowy projekt, zapomniałem odznaczyć opcję „Wsteczna kompatybilność” (nie potrzebuję wstecznej zgodności). Ponownie stworzyłem projekt bez zaznaczenia tego i wszystko jest w porządku!
Doug J. Huras

7
Po prostu ciekawy: jak można coś takiego wymyślić? Nigdy bym nie zgadł ...
BareMetalCoder

3
Dzięki, ale dlaczego ten błąd nadal istnieje w 2018 roku? Dla początkujących użytkowników Androida nie mogę utworzyć projektu „Hello World” z powodu tego błędu.
Searene

276

znalazłem to na tej stronie, działa na mnie. Zmodyfikuj /res/values/styles.xml z:

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

do:

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

21
Czy możesz dodać wyjaśnienie, dlaczego to działa? Pomoże ludziom, którzy powrócą do tego w przyszłości.
Thomas Smyth

13
1 marca 2018 r. Potwierdził, że rozwiązało to mój problem.
John Riselvato

Zwróć uwagę, że jeśli to nie działa po dodaniu "Base" do twojego AppTheme, po prostu przejdź do opcji motywu z góry podglądu układu, kliknij opcje Menifest Themes z lewej strony, a następnie wybierz AppTheme. Automatycznie odświeży układ.
Khaled Saif,

4
To też zadziałało dla mnie. Czy ktoś jednak wie, dlaczego jest to konieczne? Od kilku lat nie korzystam z Androida i nie mogę uwierzyć, ile pieniędzy musiałem zrobić, aby uruchomić i uruchomić prosty projekt. (Obejmuje to próbę zbudowania / uruchomienia niektórych przykładowych projektów dostarczonych przez Android Studio.)
pdoherty926

2
16 lipca 2018 r. Również dla mnie działa z „com.android.support:appcompat-v7:28.0.0-alpha3”.
CoolMind,

26

Problem z czerwca 2018 rozwiązany przez użycie innej wersji appcompact. Użyj tych kodów w zależnościach projektu ...

W build.gradle (Module: app) dodaj tę zależność

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

Miłego kodowania ... :)


4
Znowu jest zepsuty w wersji beta :(
nifCody

17

Metoda 1:

Znajdź /res/values/styles.xml

Zmiana

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

Do

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

Metoda 2:

Zmodyfikuj plik szablonu (zlokalizuj: android-studio/plugins/android/lib/templates/gradle-projects/NewAndroidModule/root/res/values/styles.xml.ftl )

Zmiana

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

Do

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

Obejrzyj rozwiązanie na YouTube

Rozwiązanie


17

Miałem też ten problem i został on rozwiązany jako zmiana linii z res / values ​​/ styles.xml

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

do

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

oba rozwiązania zadziałały


szczęśliwego kodowania :)
Muhammad Azam

6

Otwórz tryb podglądu

skorzystaj z poniższego łącza, aby rozwiązać problem

Poprawka - problemy z renderowaniem Nie można znaleźć następujących klas: android.support.v7.internal

goto appTheme ----> wybierz Holo Theme ---> odśwież

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


1
tylko zmiana motywu z okienka podglądu na inny motyw niż AppTheme działał
Qasim

U mnie zadziałało, po prostu zmieniłem motyw inny niż AppTheme
gIrL

6

Napotkano ten sam problem w Android Studio 3.1.3

Po prostu przejdź do pliku style.xml

i zamień nazwę motywu

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

z

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

Następnie wyczyść i odbuduj projekt, co rozwiąże problem.


5

wymienić implementation 'com.android.support:appcompat-v7:28.0.0-beta01' z

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

w build.gradle (moduł: aplikacja). Naprawiono mój czerwony znak w Android Studio 3.1.3


Świetne szczęśliwe kodowanie
Kashif

Czy można to zmienić na poziomie aplikacji? Aby nie trzeba było tego powtarzać dla każdego projektu, który mam.
TheGeeko61

4

w Androidzie 3.0.0 Canary 6 musisz zmienić wszystkie 2.6.0 beta2 na beta1 (appcompat, design, supportvector)


4

Spróbuj tego:

Po prostu zmień:

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

do:

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

Odniesienie


3

To działa dla mnie Dokonałem następujących zmian w Style.xml

Zmień następujący kod:

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

Z

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

2

Użyj tego:

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

zamiast

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

W moim przypadku usunęło to problem z renderowaniem.


1

To jest minimalna konfiguracja, która rozwiązuje problem.

posługiwać się:

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

z:

 compileSdkVersion 26
 buildToolsVersion "26.0.1"

i do pliku build.gradle znajdującego się w katalogu głównym projektu:

buildscript {
    ...
    ....
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        ...
        ...
    }
}

0

Miałem też ten sam problem. Nic tak nie pomogło, jak zmiana motywu w oknie podglądu układu.

Pomogło mi dodanie tego Appthemew styles.xml:

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

Mimo to dawał mi błąd: „nie można rozwiązać widżetu symboli ... koordynator Układ”. Następnie zaktualizowałem mój build.gradle(app)o:

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

Jeszcze jedna rzecz:

compileSdkVersion 27
targetSdkVersion 27

0

Ja też miałem ten problem z implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'.

Rozwiązaniem dla mnie było przejście File->Invalidate Caches / Restart -> Invalidate-> Close Project-> Usuń projekt z okna projektu -> Open Project(z okna projektu).

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.