渲染 android 布局上的 NullPointerException
NullPointerException on render android layout
我的 android 项目中的任何布局,都会生成渲染异常:
Android Studio 1.2 测试版
java.lang.NullPointerException
at com.android.layoutlib.bridge.impl.RenderSessionImpl.isThemeAppCompat(RenderSessionImpl.java:1203)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.findStatusBar(RenderSessionImpl.java:1066)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.init(RenderSessionImpl.java:209)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:319)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350)
at com.android.tools.idea.rendering.RenderTask.compute(RenderTask.java:497)
at com.android.tools.idea.rendering.RenderTask.compute(RenderTask.java:485)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:894)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:485)
at com.android.tools.idea.rendering.RenderTask.render(RenderTask.java:590)
at com.intellij.android.designer.designSurface.AndroidDesignerEditorPanel.run(AndroidDesignerEditorPanel.java:480)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310)
at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:254)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227)
at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
at com.intellij.util.Alarm$Request.run(Alarm.java:351)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
这是 Android Studio Beta 1.2 中的错误。
升级到1.3后,不会出现这种情况
我今天在最新版本的 AS 上遇到了这个错误,但原因不同。
我重命名了我的一个应用主题,然后在我手动选择该主题的所有 activity 布局文件中(在预览 window 的主题下拉菜单中),我收到了这个错误。
一旦我意识到这是问题所在,我只需将主题更改为 valid/existing 主题即可轻松修复它。同样,我不是在谈论更改 activity 的已定义主题,我是在谈论更改 PREVIEW 主题。
将预览渲染目标从 22 切换到 21 让我在 Android Studio 1.2 Stable 上的错误消失了。
我支持Siavash。我在 styles.xml 中更改了其中一种样式的名称并开始收到相同的错误消息。
查看设计预览工具栏,检查以确保应用主题名称(AppTheme、AppBaseTheme 等)存在。只需单击显示 AppTheme 的位置,如果选择不在选项列表中,则它不存在于您的项目中。尝试将其添加到 theme.xml 或 style.xml.
我的 android 项目中的任何布局,都会生成渲染异常:
Android Studio 1.2 测试版
java.lang.NullPointerException
at com.android.layoutlib.bridge.impl.RenderSessionImpl.isThemeAppCompat(RenderSessionImpl.java:1203)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.findStatusBar(RenderSessionImpl.java:1066)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.init(RenderSessionImpl.java:209)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:319)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350)
at com.android.tools.idea.rendering.RenderTask.compute(RenderTask.java:497)
at com.android.tools.idea.rendering.RenderTask.compute(RenderTask.java:485)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:894)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:485)
at com.android.tools.idea.rendering.RenderTask.render(RenderTask.java:590)
at com.intellij.android.designer.designSurface.AndroidDesignerEditorPanel.run(AndroidDesignerEditorPanel.java:480)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310)
at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:254)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227)
at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
at com.intellij.util.Alarm$Request.run(Alarm.java:351)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
这是 Android Studio Beta 1.2 中的错误。 升级到1.3后,不会出现这种情况
我今天在最新版本的 AS 上遇到了这个错误,但原因不同。
我重命名了我的一个应用主题,然后在我手动选择该主题的所有 activity 布局文件中(在预览 window 的主题下拉菜单中),我收到了这个错误。
一旦我意识到这是问题所在,我只需将主题更改为 valid/existing 主题即可轻松修复它。同样,我不是在谈论更改 activity 的已定义主题,我是在谈论更改 PREVIEW 主题。
将预览渲染目标从 22 切换到 21 让我在 Android Studio 1.2 Stable 上的错误消失了。
我支持Siavash。我在 styles.xml 中更改了其中一种样式的名称并开始收到相同的错误消息。
查看设计预览工具栏,检查以确保应用主题名称(AppTheme、AppBaseTheme 等)存在。只需单击显示 AppTheme 的位置,如果选择不在选项列表中,则它不存在于您的项目中。尝试将其添加到 theme.xml 或 style.xml.