Android工作室无法渲染布局预览

时间:2014-10-27 19:00:51

标签: android android-studio android-5.0-lollipop

我一直在使用Android Studio 0.8.6来开发应用程序,并且在使用API​​21时遇到布局预览问题。我收到以下错误:

  

渲染问题:   无法实例化以下类:    - android.support.v7.widget.Toolbar

我有最新的SDK Build工具(21.0.2)以及下载和安装的完整API21。我的targetSDKVersion在gradle文件中设置为21。 如果我将预览更改为使用API​​20渲染,一切似乎都很好。以下提供了例外情况。

谢谢!

  

异常详细信息java.lang.ClassNotFoundException:   android.support.v4.content.ContextCompatApi21 at   com.intellij.util.lang.UrlClassLoader.findClass(UrlClassLoader.java:148)   在java.lang.ClassLoader.loadClass(ClassLoader.java:424)at   java.lang.ClassLoader.loadClass(ClassLoader.java:357)at   android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:319)   在   android.support.v7.internal.widget.TintManager.getDrawable(TintManager.java:133)   在   android.support.v7.internal.widget.TintTypedArray.getDrawable(TintTypedArray.java:62)   在android.support.v7.widget.Toolbar。(Toolbar.java:248)at   android.support.v7.widget.Toolbar。(Toolbar.java:190)at   java.lang.reflect.Constructor.newInstance(Constructor.java:408)at   android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:806)   在   android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   在android.view.LayoutInflater.rInflate(LayoutInflater.java:782)   在android.view.LayoutInflater.inflate(LayoutInflater.java:504)at   android.view.LayoutInflater.inflate(LayoutInflater.java:385)

8 个答案:

答案 0 :(得分:43)

在Android Studio 1.2中,我遇到了这个问题。

这就是我所做的和工作。

  1. 清洁项目
  2. 重建项目
  3. 同步Gradle
  4. 按更新布局预览按钮

答案 1 :(得分:8)

Android Studio的最新版本为0.8.14,这解决了API21的一些问题。请注意,根据Android Studio 0.8.12 announcement(在“无补丁”下):

  

我们已经找到并修复了修补机制中的几个重要错误。其中一个错误意味着升级到新版本,同时导致功能相同的安装,也会导致二进制内容略有不同(例如,.jar文件中的某些时间戳会有所不同)。这意味着实际的二进制签名不匹配,这例如破坏了应用程序签名。

     

我们现在已经找到并修复了该错误,但由于给定先前版本存在许多不同的二进制变体,因此我们无法创建单个补丁来更新到新版本。因此,对于此版本,我们将需要完整下载IDE。从此版本开始,我们应该能够在保留应用程序签名的同时准确安装更新。

因此,您需要手动安装latest build

答案 2 :(得分:8)

尝试在“预览”窗格中取消选择“自动选择最佳”,并在查看布局XML时选择较旧的API。它位于菜单栏中,您可以在其中选择要预览使用的设备和主题,一直在右侧。

答案 3 :(得分:5)

将您的样式父级更改为Theme.AppCompat.Light.NoActionBar,而不是Theme.AppCompat.Light.DarkActionBar中的styles.xml .........这对我有效。

答案 4 :(得分:3)

这是known issue,见下文。

  

虚假渲染异常

特定的渲染错误消息是: 找不到以下类:

android.support.v7.internal.app.WindowDecorActionBar

尽管出现错误消息,但布局预览正确且可以安全地忽略该消息。该问题已在2.0预览中修复。 有关详细信息,请参阅bug 192102 。 (问题链接不再有效)。

答案 5 :(得分:0)

我在android studio 2.2中面临同样的问题

这就是我所做的,没有什么

-Clean Project

- 重建项目

-Sync Gradle

对我来说唯一真正有效的是重启android studio(关闭并重新打开)

答案 6 :(得分:0)

  1. 清洁项目
  2. 重建项目
  3. 同步Gradle
  4. 按更新布局预览按钮
  5. “更新布局预览”按钮位于Android手机预览上方,它是带有圆形蓝色箭头的按钮,右侧是放大镜缩放按钮。

    注意:在最后一步按下更新布局按钮之前,此解决方案似乎无效,然后才能正常工作。这解决了我的问题。我使用的是Android Studio v2.1.2。

    干杯!

答案 7 :(得分:0)

  • 清洁项目
  • 重建项目
  • 同步Gradle
  • 按更新布局预览 按钮

或者

右键单击XML文件中的

并标记为XML。

应该有用。