Android Studio ConstraintLayout alpha 9 onMeasure错误

时间:2016-10-06 14:45:30

标签: android layout

我使用ConstraintLayout alpha 9来构建我的布局 当我在alpha 8时它表示过时的布局但是当我更新到alpha 9 i gen onMeasure错误 这是错误代码

java.lang.NoSuchMethodError: android.support.constraint.solver.widgets.ConstraintWidget.setHorizontalWeight(F)V
at android.support.constraint.ConstraintLayout.setChildrenConstraints(ConstraintLayout.java:675)
at android.support.constraint.ConstraintLayout.updateHierarchy(ConstraintLayout.java:468)
at android.support.constraint.ConstraintLayout.onMeasure_Original(ConstraintLayout.java:770)
at android.support.constraint.ConstraintLayout.onMeasure(ConstraintLayout.java)
at android.view.View.measure(View.java:19731)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.support.v7.widget.ContentFrameLayout.onMeasure_Original(ContentFrameLayout.java:135)
at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java)
at android.view.View.measure(View.java:19731)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.support.v7.widget.ActionBarOverlayLayout.onMeasure_Original(ActionBarOverlayLayout.java:391)
at android.support.v7.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java)
at android.view.View.measure(View.java:19731)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:715)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:461)
at android.view.View.measure(View.java:19731)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.measureView(RenderSessionImpl.java:545)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:342)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:389)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:548)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:533)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:966)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:533)
at com.android.tools.idea.rendering.RenderTask.lambda$inflate$72(RenderTask.java:659)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

任何解决方案

1 个答案:

答案 0 :(得分:6)

由于API更改,您可能必须在升级到Alpha 8后重新启动Android Studio 2.2才能使布局预览正常工作。

请参阅this

解决方案

使无效缓存失效并重新启动

要执行此操作,请转到

  

文件 - >无效缓存/重新启动 - >无效并重新启动

致谢:ConstraintLayout does not render correctly outside blueprint mode