ConstraintLayout 升级到 alpha9 后,我onMeasure()
在设计模式下遇到错误渲染问题:
详情(例外):
java.lang.NoSuchMethodError: android.support.constraint.solver.widgets.ConstraintWidget.immediateConnect(Landroid/support/constraint/solver/widgets/ConstraintAnchor$Type;Landroid/support/constraint/solver/widgets/ConstraintWidget;Landroid/support/ android.support.constraint.ConstraintLayout.setChildrenConstraints(ConstraintLayout.java:555) 在 android.support.constraint.ConstraintLayout.updateHierarchy(ConstraintLayout.java:468) 的约束/求解器/小部件/ConstraintAnchor$Type;II)V。 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) 在 android.widget.FrameLayout。onMeasure(FrameLayout.java:185) 在 android.view.View.measure(View.java:19731) 在 android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:715) 在 android.widget.RelativeLayout.onMeasure(RelativeLayout.java :461) 在 com.android.layoutlib.bridge.impl.RenderSessionImpl.measureView(RenderSessionImpl.java:545) 在 com.android.layoutlib.bridge.impl 的 android.view.View.measure(View.java:19731)。 RenderSessionImpl.inflate(RenderSessionImpl.java:342) 在 com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429) 在 com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:389)在 com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:548) 在 com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:533) 在 com.intellij。openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:966) 在 com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:533) 在 com.android.tools.idea.rendering.RenderTask。 lambda$inflate$72(RenderTask.java:659) 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util。 concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread.run(Thread.java:745)在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread 运行(FutureTask.java:266) .run(Thread.java:745)在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread 运行(FutureTask.java:266) .run(Thread.java:745)
如果我将 build.gradle 中的依赖从更改com.android.support.constraint:constraint-layout:1.0.0-alpha9
为com.android.support.constraint:constraint-layout:1.0.0-alpha8
一切正常。
有小费吗?alpha9版本坏了?