无法在 android studio 中加载 AppCompat ActionBar,出现未知错误

Failed to load AppCompat ActionBar with unknown error in android studio

下面是我的 xml 文件。在预览中有两个错误“无法加载 AppCompat ActionBar,出现未知错误”和 'Failed to instaniate more than one class'。如何能够 运行 app.But 应用程序崩溃并且在 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 支持库的版本:

支持库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'

在 android 3.0.0 canary 6 中,您必须将所有 2.6.0 beta2 更改为 beta1 (appcompat,design,supportvector)

试试这个:

只需更改:

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

至:

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

Reference

使用这个:

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'

在我的例子中,它解决了渲染问题。

打开预览模式

按照以下 link 解决问题

修复 - 渲染问题无法找到以下 类:android.support.v7.internal

转到 appTheme ----> select Holo 主题 ---> 刷新

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

在这个网站上找到的,对我有效。 修改 /res/values/styles.xml 来自:

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

至:

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

2018 年 6 月问题已通过使用不同的 appcompact 版本修复。 在您的项目依赖项中使用这些代码...

在build.gradle(模块:app)中添加这个依赖

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

快乐编码...:)

这是解决问题的最低配置。

使用:

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

这对我有用 我在 Style.xml

中进行了以下更改

更改以下代码:

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

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

我也遇到了同样的问题。没有什么比从布局预览更改主题更能帮助我了。window。

对我有帮助的是将此添加到 styles.xml 中的 Apptheme

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

它仍然给我错误:"cannot resolve symbol widget...coordinatorLayout"。然后我用

更新了我的 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

implementation 'com.android.support:appcompat-v7:28.0.0-alpha3' 也有这个问题。

我的解决方案是 File -> Invalidate Caches / Restart -> Invalidate -> Close Project -> 从项目 window 中删除项目 - > Open Project(来自项目 window)。

方法一:

找到/res/values/styles.xml

改变

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

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

方法二:

修改模板文件(定位: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 上观看解决方案

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

中的红色标记

我也遇到了这个问题,已经解决了 从 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">

两种解决方案都有效

Android Studio 3.1.3

中遇到同样的问题

只需转到style.xml文件

并替换主题名称

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

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

然后cleanrebuild project.This将解决错误。