web-dev-qa-db-fra.com

ConstraintLayout ne s'affiche pas correctement en dehors du mode Blueprint

J'ai commencé à utiliser Android Studio 2.2 et ConstraintLayout aujourd'hui, mais j'ai des problèmes avec le rendu. Lorsque vous utilisez le mode Blueprint, tout semble correct. Lorsque vous utilisez le mode Design, les objets sont bloqués en haut coin gauche tout écrasé.

Avertissement Android Studio: erreur 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/constraint/solver/widgets/ConstraintAnchor$Type;II)V
    at Android.support.constraint.ConstraintLayout.setChildrenConstraints(ConstraintLayout.Java:517)
    at Android.support.constraint.ConstraintLayout.updateHierarchy(ConstraintLayout.Java:433)
    at Android.support.constraint.ConstraintLayout.onMeasure_Original(ConstraintLayout.Java:728)
    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.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)

La dépendance:

compile 'com.Android.support.constraint:constraint-layout:1.0.0-alpha8'

Est-ce une erreur insoluble dans Android Studio ou y a-t-il quelque chose de résoluble? Le SDK est mis à jour.

MODIFIER

Fichier XML:

<?xml version="1.0" encoding="utf-8"?>

<Android.support.constraint.ConstraintLayout
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    xmlns:tools="http://schemas.Android.com/tools"
    Android:orientation="vertical" Android:layout_width="match_parent"
    Android:layout_height="match_parent">

    <ImageView
        Android:src="@drawable/about"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:id="@+id/imageView6"
        Android:layout_marginStart="16dp"
        Android:layout_marginTop="16dp"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        Android:layout_marginLeft="16dp" />

    <TextView
        Android:text="TextView"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:id="@+id/textView33"
        Android:layout_marginStart="16dp"
        Android:layout_marginTop="16dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintLeft_toRightOf="@+id/imageView6"
        Android:layout_marginLeft="16dp" />

    <TextView
        Android:text="TextView"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:id="@+id/textView34"
        app:layout_constraintRight_toRightOf="@+id/textView33"
        Android:layout_marginTop="8dp"
        app:layout_constraintTop_toBottomOf="@+id/textView33" />
</Android.support.constraint.ConstraintLayout>
18
Zoe

comme mentionné ici Notes de mise à jour de la disposition des contraintes Alpha8

Remarque: en raison du changement d'API, vous devrez peut-être redémarrer Android Studio 2.2 après la mise à niveau vers alpha 8 pour que l'aperçu de la disposition fonctionne.

dans la barre de menus, sélectionnez file et choisissez invalidate caches / restart

51
amorenew