错误:渲染问题无法找到以下类android.support.v7.internal.widget.ActionBarOverlayLayout

Ash*_*yal 95 android android-layout android-support-library

我只是Android应用程序开发的初学者.当我在Android Studio 1.1.0上创建一个新项目时,它放弃了这个错误" 渲染问题无法找到以下类:android.support.v7.internal.widget.ActionBarOverlayLayout "

现在我在google上搜索了这个,我发现大多数人可能会给出3个解决方案.

他们说:

  1. 将api(从预览窗口窗格)从22更改为21,或者

  2. 将应用主题从"项目主题"更改为任何其他主题.

  3. 一定要在项目结构中导入正确的appcompat-v7库 - >依赖项, 请参考以下步骤:将支持库功能项目标识符添加到依赖项部分.例如,要包含appcompat项目,请将compile"com.android.support:appcompat-v7:18.0.+"添加到依赖项部分,如以下示例所示:

dependencies {
    ...
    compile "com.android.support:appcompat-v7:18.0.+" }
Run Code Online (Sandbox Code Playgroud)

注意:我的android支持lib是最新的(使用SDK Manager安装它).

按照前两个步骤,删除错误.但我觉得这些不是永久的解决方案,第二步似乎就像一个临时的解决方法.我对第一步也有疑问,如果要删除错误,我们将api从22更改为21,最后,我们的应用程序将无法在Android 5.1.1(API 22)中运行,它将仅限于Android 5.0 .1及以下(API 21).我的疑惑有效吗?关于第三步,它是这个问题的永久解决方案吗?

PS:很抱歉标注不匹配,由于网站声誉,不允许添加确切的标记

eee*_*eee 163

像这样修复res/values/styles.xml:

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

所要求的详细解释:无论如何Theme.AppCompat.Light.DarkActionBar都是超类的子类Base.按住Ctrl键并单击(Android Studio),您将被带到源:

<style name="Theme.AppCompat.Light.DarkActionBar" parent="Base.Theme.AppCompat.Light.DarkActionBar" />
Run Code Online (Sandbox Code Playgroud)

我们没有改变任何东西,我们只是更精确地定义它.

  • 哇,这是Android Studio中蹩脚的开箱体验. (29认同)
  • 如果我想使用"Theme.AppCompat.Light.NoActionBar"那么呢? (6认同)
  • 奇怪的是,添加"基地"这个词.为我工作."你所有的基地都属于我们." (4认同)

Sag*_*nga 28

这是自Android Studio build 1.1以来的一个已知错误(它仍然在1.2和1.3预览版中).将预览的API级别从22更改为21可以修复大多数人的问题.在等待修复时,您也可以尝试一下.

在此输入图像描述

最初回答:Android Studio v 1.1/1.2中的渲染问题

只是重新发布


sud*_*doz 16

修改src/res/values/styles.xml

<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar"></style>
Run Code Online (Sandbox Code Playgroud)

然后选择API22,你会发现这个问题已修复!