首页 文章

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

提问于
浏览
22

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

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

我有最新的SDK Build工具(21.0.2)以及下载和安装的完整API21 . 我的targetSDKVersion在gradle文件中设置为21 . 如果我将预览更改为使用API20渲染,一切似乎都很好 . 下面提供了异常详细信息 .

谢谢!

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

8 回答

  • 43

    最新版本的Android Studio是0.8.14,这解决了API21的许多问题 . 请注意,根据Android Studio 0.8.12 announcement(在'No patches'下):

    我们已经找到并修复了修补机制中的几个重要错误 . 其中一个错误意味着升级到新版本,同时导致功能相同的安装,也会导致二进制内容略有不同(例如,.jar文件中的某些时间戳会有所不同) . 这意味着实际的二进制签名不匹配,这例如打破了应用程序签名检查 . 我们现在已经发现并修复了该错误,但由于给定先前版本存在许多不同的二进制变体,因此我们无法创建单个补丁来更新到新版本 . 因此,对于此版本,我们将需要完整下载IDE . 从此版本开始,我们应该能够在保留应用程序签名的同时准确安装更新 .

    所以你需要手动安装latest build .

  • 0

    在Android Studio 1.2中,这个问题又回到了我的面前 .

    这就是我所做的和工作 .

    • 清洁项目

    • 重建项目

    • Sync Gradle

    • 按更新布局预览按钮

  • 8

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

  • 5

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

  • 3

    这是known issue,见下文 .

    虚假渲染异常

    特定的呈现错误消息是:找不到以下类:

    android.support.v7.internal.app.WindowDecorActionBar
    

    尽管出现错误消息,但布局预览正确且 the message can be safely ignored . 该问题已在2.0预览中修复 . 有关详细信息,请参阅错误192102 . (问题链接不再有效) .

  • 8

    我在android studio 2.2中遇到了同样的问题

    这就是我所做的,没有

    • 清洁项目

    • 重建项目

    -Sync Gradle

    唯一对我有用的是重启android studio(关闭并重新打开)

  • 0
    • 清洁项目

    • 重建项目

    • Sync Gradle

    • 按更新布局预览按钮

    “更新布局预览”按钮位于Android手机预览上方,它是带有圆形蓝色箭头的按钮,右侧是放大镜缩放按钮 .

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

    干杯!

  • 0
    • 清洁项目

    • 重建项目

    • Sync Gradle

    • 按更新布局预览按钮

    要么

    在您的XML文件中按右键并标记为XML .

    应该工作 .

相关问题