找不到以下类:android.support.v7.internal.app.WindowDecorActionBar

Rah*_*hul 114 android android-layout android-studio

是什么原因导致Android Studio布局预览中出现以下错误?

呈现问题无法找到以下类: - android.support.v7.internal.app.WindowDecorActionBar(修复构建路径,创建类)提示:尝试构建项目.

jos*_*gle 273

Actionbar已被弃用并替换为工具栏.话虽如此,如果您想立即继续使用Actionbar,可以执行以下操作:

  1. 在res文件夹中的values文件夹中打开styles.xml.
  2. 将单词Base添加到主题名称的开头,使其显示为"Base.Theme.AppCompat.Light.DarkActionBar"

在此输入图像描述

我今天遇到了同样的问题,这个解决方案对我有用.仅供参考我在Android Studio中,但希望Eclipse的解决方案类似.

FYI这里是使用工具栏替换动作条像样的博客文章,当你准备这样做的:https://blog.xamarin.com/android-tips-hello-toolbar-goodbye-action-bar/

  • 没有什么比Goog更改你的东西了.再次.很好的发现@joshgoldeneagle! (8认同)
  • 我在Android Studio中创建一个新的默认项目时遇到此错误.这解决了它. (7认同)
  • 这种解决方法非常有效!会再次投票 (3认同)

小智 46

我认为你必须依赖"com.android.support:appcompat-v7:23.1.1"于你的module设置.

ActionBar 已被弃用.

只需在"build.gradle"中将依赖项更改'com.android.support:appcompat-v7:23.1.1'为.'com.android.support:appcompat-v7:23.0.1'

您还可以将父级样式更改为"Theme.AppCompat.Light.NoActionBar".

尝试使用Toolbar而不是ActionBar.


Rav*_*del 32

这个对我有用

在res/values/styles.xml中更改AppTheme父级解决了此问题.更换

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
Run Code Online (Sandbox Code Playgroud)

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
Run Code Online (Sandbox Code Playgroud)

或者您可以从列表中更改API级别21.

  • 这是有效的,但当你把Base.Theme放在它时它究竟做了什么? (6认同)

Nar*_*tam 9

转到:res - > values - > styles(V21) - >

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>
Run Code Online (Sandbox Code Playgroud)

Apptheme.NoActionBar预览中选择您的主题.因为ActionBar被剥夺了,欢迎回来ToolBar.无需更改您的依赖项build.gradle(Module:app).从com.android.support:appcompat-v7:23.1.1com.android.support:appcompat-v7:23.0.1.

希望对你有帮助!!!


小智 8

我有一个类似的问题,并且自从ActionBar被弃用以来,许多人已经说过,诀窍是指定

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
Run Code Online (Sandbox Code Playgroud)

注意:父项以.NoActionBar结尾.

由于ActionBar已被弃用,Android已经开始使用ToolBar,您可以在developer.android.com上阅读

我试过指定

<style name="AppTheme.NoActionBar">
Run Code Online (Sandbox Code Playgroud)

正如另一篇文章所说,并且犯了错误.虽然其他人可能没有这个问题.