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

Tup*_*oal 22 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)at java.lang.ClassLoader.loadClass(ClassLoader.java:424) )位于android.support.v7.intent.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)中. android.view.LayoutInflater.in中android.view.LayoutInflater.rInflate(LayoutInflater.java:782)的LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)flate(LayoutInflater.java:504)在android.view.LayoutInflater.inflate(LayoutInflater.java:385)

Sot*_*tti 44

这个问题在Android Studio 1.2中回复给我.

这就是我所做的和工作.

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


ian*_*ake 8

最新版本的Android Studio是0.8.14,这修复了API21的一些问题.请注意,根据Android Studio 0.8.12公告(在"无补丁"下):

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

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

因此,您需要手动安装最新版本.


San*_*dhe 8

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


小智 5

你的风格父母改变Theme.AppCompat.Light.NoActionBar,而不是Theme.AppCompat.Light.DarkActionBarstyles.xml.........它为我工作.