Не вдалося завантажити AppCompat ActionBar з невідомою помилкою в андроїд-студії


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>

Спробуйте зі зміною версії Android.
четський мекха

спробував змінити версію .. Не допомагає
Сіва

Про рішення без зміни бібліотеки додатків дивіться: stackoverflow.com/questions/44223687#45002903
Mr-IDE


Переконайтесь, що ваша версія 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
Дякую! що це зробило. BTW для нас Android dev newbiew - це рівно, що зміни потрібно проводити у файлі build.gradle (Модуль: додаток)
Julian Borrero

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>

21
Чи можете ви додати пояснення, чому це працює? Це допоможе людям, які переглянуть це в майбутньому.
Томас Сміт

13
1 березня 2018 року це підтверджено моєю проблемою.
Джон Різельвато

Просто зауважте, що якщо після додавання "Base" у вашій AppTheme це не працює, просто перейдіть до пункту "Опція теми" вгорі попереднього перегляду макета, клацніть на теми Menifest з лівої сторони та виберіть AppTheme. Це автоматично оновить макет.
Халед Сайф

4
Це теж працювало для мене. Хтось знає, навіщо це потрібно? Я декілька років був у відсутності Android, і я не можу повірити, скільки фіналінгу потрібно було зробити, щоб розпочати простий проект. (Сюди входить спроба створити / запустити деякі зразки проектів, передбачених Android Studio.)
pdoherty926,

2
16 липня 2018 року для мене теж працює з 'com.android.support:appcompat-v7:28.0.0-alpha3'.
CoolMind

26

Червень 2018 року виправлено випуск за допомогою іншої версії програми. Використовуйте ці коди для залежностей від вашого проекту ...

У build.gradle (Модуль: додаток) додайте цю залежність

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

Рішення


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

goto appTheme ----> виберіть Holo Theme ---> refresh

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


1
просто зміна теми з панелі попереднього перегляду на якусь іншу тему, ніж AppTheme працювала
Qasim

Це працювало для мене, просто змінивши тему, окрім AppTheme
gIrL

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


Велике щасливе кодування
Кашиф

Чи є спосіб змінити це на рівні програми? Так що це не потрібно повторювати для кожного проекту, який у мене є.
TheGeeko61

4

в android 3.0.0 canary 6 потрібно змінити всі 2.6.0 beta2 на beta1 (appcompat, дизайн, підтримка)


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

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'
        ...
        ...
    }
}

0

Я також стикався з тією ж проблемою. Ніщо, як зміна теми у вікні попереднього перегляду макета мені не допомогло.

Що допомогло мені додавала це Appthemeв styles.xml:

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

І все-таки це дало мені помилку: "Неможливо вирішити віджет символів ... координаторLayout". Потім я оновив 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(з вікна проекту).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.