在呈现期间引发exception:无法find操作栏的布局

刚刚使用Android Studio时,我在编辑器中编辑了一个XML文件,在预览和devise窗口中出现这个错误:

Exception raised during rendering: Unable to find the layout for Action Bar. 

我已经尝试重新启动Android Studio,我的笔记本电脑和谷歌search的答案,但我找不到任何东西。 有没有人经历过类似的事情?

Solutions Collecting From Web of "在呈现期间引发exception:无法find操作栏的布局"

我有这种错误。 在我的Mac上,有API 22.如果我select它,将出现此错误。 所以点击API 21或更低版本可以解决您的问题

在这里输入图像说明

您可能需要更新您的工具

那些使用Eclipse可能会尝试selectTheme.DeviceDefault消除exception。 更新:根据评论,这也适用于Android Studio。 在这里输入图像说明

你可以通过两种方式解决这个问题

从选项卡更改API,尝试其中一个从可用或select拾取最佳或更改您的最低SDK

从可用选择API

如果第一个解决scheme不工作,更改主题

在这里输入图像说明

点击编辑器中的主题,然后更改主题:

在编辑器中点击主题并更改主题

我的问题是在这之后解决的

我在eclipse-3.8,adt-23.07,sdk-tools-23.1,appcompat_v7_r19.1上有这个错误。

在分析错误后,我发现这个问题是在android-sdk-linux / platforms / android-23 / data / layoutlib.jar:com / android / layoutlib / bridge / impl / Layout.class方法createActionBar在行if (this.mBuilder.isThemeAppCompat())

我的解决scheme

  1. (没有源码,所以)反编译Layout.class – > Layout.java
  2. 编辑Layout.java,添加方法:
 private boolean hasWindowDecorActionBar(SessionParams params) { LayoutlibCallback callback = params.getLayoutlibCallback(); try { callback.findClass("android.support.v7.app.WindowDecorActionBar"); } catch (ClassNotFoundException ei) { try { callback.findClass("android.support.v7.internal.app.WindowDecorActionBar"); } catch (ClassNotFoundException e) { return false; } } return true; } 
  1. find这行if (this.mBuilder.isThemeAppCompat())然后更改为:
 if (this.mBuilder.isThemeAppCompat() && hasWindowDecorActionBar(params)) 
  1. 重新编译Layout.java – > Layout.class和Layout $ Builder.class
  2. 用新的类更新layoutlib.jar
  3. 重启eclipse

就这样。 现在,我可以使用API​​-23渲染与appcompat_v7_r19.1链接的所有旧应用布局。

你想做干净的项目。

我认为这是一个错误,直到现在还没有最终的解决scheme,更改为API不到API-22是一个临时解决scheme没有更多。