web-dev-qa-db-ja.com

制約レイアウト問題Java.lang.AssertionError:TOP

Constraint Layoutの使用を開始しましたが、デザインファイルのみをコンパイルしているときにアサーションエラーが発生しました。この問題が発生します。この問題を解決する正しい方法は何ですか?私はホールインザデイを台無しにします。これが私の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:id="@+id/cL_Layout"
    Android:layout_width="match_parent"
    Android:layout_height="80dp"
    Android:background="@color/card_background">

    <Android.support.constraint.Guideline
        Android:id="@+id/gL_right_margin"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:orientation="vertical"
        app:layout_constraintGuide_percent="0.95" />

    <Android.support.constraint.Guideline
        Android:id="@+id/gL_vertical_center"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:orientation="vertical"
        app:layout_constraintGuide_percent="0.50364965" />
    <Android.support.constraint.Guideline
        Android:id="@+id/gL_bottom_margin"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:orientation="horizontal"
        app:layout_constraintGuide_percent="1.0" />

    <Android.support.constraint.Guideline
        Android:id="@+id/gL_image_size_margin"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:orientation="vertical"
        app:layout_constraintGuide_percent="0.3" />


    <ImageView
        Android:id="@+id/imgVw_AddClips_recVw_icon"
        Android:layout_width="0dp"
        Android:layout_height="0dp"
        Android:layout_marginBottom="4dp"
        Android:layout_marginStart="4dp"
        Android:layout_marginTop="4dp"
        Android:adjustViewBounds="true"
        Android:background="@drawable/qik_highlights_shape"
        Android:contentDescription="@string/dummy_content"
        Android:scaleType="fitCenter"
        Android:src="@drawable/bg_cloud_icon"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toStartOf="@+id/gL_image_size_margin"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />


    <com.ibot.cyranoapp.customview.TextViewFont
        Android:id="@+id/txtIp_recVw_AddClips_Name_title"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_alignParentStart="true"
        Android:layout_marginStart="8dp"
        Android:layout_marginTop="8dp"
        Android:text="@string/recVw_Template_channel"
        Android:textAllCaps="false"
        Android:textColor="@color/fa_preview_button_text_grey"
        Android:textSize="14sp"
        Android:textStyle="bold"
        app:layout_constraintStart_toEndOf="@+id/gL_image_size_margin"
        app:layout_constraintTop_toTopOf="parent" />


    <com.ibot.cyranoapp.customview.TextViewFont
        Android:id="@+id/txtIp_recVw_Components_Name_title"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_alignParentStart="true"
        Android:layout_marginStart="8dp"
        Android:text="@string/recVw_Template_Components"
        Android:textAllCaps="false"
        Android:textColor="@color/fa_preview_button_text_grey"
        Android:textSize="12sp"
        app:layout_constraintStart_toEndOf="@+id/gL_image_size_margin"
        app:layout_constraintTop_toBottomOf="@+id/txtIp_recVw_AddClips_Name_title" />

    <com.ibot.cyranoapp.customview.TextViewFont
        Android:id="@+id/txtIp_recVw_channel_subscribers_hint"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_marginStart="8dp"
        Android:text="@string/channel_subscribers"
        Android:textAllCaps="false"
        Android:textColor="@color/fa_preview_button_text_grey"
        Android:textSize="12sp"
        app:layout_constraintStart_toEndOf="@+id/gL_image_size_margin"
        app:layout_constraintTop_toBottomOf="@+id/txtIp_recVw_Components_Name_title" />


    <RadioButton
        Android:id="@+id/rBtn_AddClips_SelectionIcon"
        Android:layout_width="20dp"
        Android:layout_height="20dp"
        Android:layout_marginBottom="8dp"
        Android:layout_marginTop="8dp"
        Android:button="@drawable/qik_checkbox"
        Android:text="@null"
        Android:theme="@null"
        app:layout_constraintBottom_toTopOf="@+id/gL_bottom_margin"
        app:layout_constraintEnd_toStartOf="@+id/gL_right_margin"
        app:layout_constraintTop_toTopOf="parent" />

    <View
        Android:id="@+id/view_template_1"
        Android:layout_width="match_parent"
        Android:layout_height="1dp"
        Android:background="@color/fa_preview_button_text_grey"
        Android:visibility="gone"
        app:layout_constraintBottom_toTopOf="@+id/gL_right_margin"
        app:layout_constraintEnd_toEndOf="@+id/gL_right_margin" />

    <View
        Android:id="@+id/view_template_selection"
        Android:layout_width="0dp"
        Android:layout_height="0dp"
        Android:background="@color/fa_green_1"
        app:layout_constraintBottom_toBottomOf="@+id/view_template_1"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</Android.support.constraint.ConstraintLayout>

そしてここに私のエラーログ:

Java.lang.AssertionError:TOP at Android.support.constraint.solver.widgets.Guideline.getAnchor(Guideline.Java:159)at Android.support.constraint.solver.widgets.ConstraintWidget.immediateConnect(ConstraintWidget.Java:1597)at Android.support.constraint.ConstraintLayout.setChildrenConstraints(ConstraintLayout.Java:1031)at Android.support.constraint.ConstraintLayout.updateHierarchy(ConstraintLayout.Java:794)at Android.support.constraint.ConstraintLayout.onMeasure(ConstraintLayout.Java:1542) Android.view.View.measure(View.Java:21051)、Android.view.ViewGroup.measureChildWithMargins(ViewGroup.Java:6459)、Android.widget.FrameLayout.onMeasure(FrameLayout.Java:185)、Android.support。 v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.Java:141)at Android.view.View.measure(View.Java:21051)at Android.view.ViewGroup.measureChildWithMargins(ViewGroup.Java:6459)at Android.widget.LinearLayout .measureChildBeforeLayout(LinearLayout.Java:1464)at Android.widget.LinearLayout.measureVert ical(LinearLayout.Java:758)at Android.widget.LinearLayout.onMeasure(LinearLayout.Java:640)at Android.view.View.measure(View.Java:21051)at Android.view.ViewGroup.measureChildWithMargins(ViewGroup.Java :6459)at Android.widget.FrameLayout.onMeasure(FrameLayout.Java:185)at Android.view.View.measure(View.Java:21051)at Android.view.ViewGroup.measureChildWithMargins(ViewGroup.Java:6459)at Android .widget.LinearLayout.measureChildBeforeLayout(LinearLayout.Java:1464)at Android.widget.LinearLayout.measureVertical(LinearLayout.Java:758)at Android.widget.LinearLayout.onMeasure(LinearLayout.Java:640)atAndroid.view.View。メジャー(View.Java:21051)、Android.view.ViewGroup.measureChildWithMargins(ViewGroup.Java:6459)、Android.widget.FrameLayout.onMeasure(FrameLayout.Java:185)、com.Android.internal.policy.DecorView.onMeasure (DecorView.Java:849)at Android.view.View.measure(View.Java:21051)at Android.view.ViewRootImpl.performMeasure(ViewRootImpl.Java:2583)at Android.view.ViewRootImpl.measu reHierarchy(ViewRootImpl.Java:1642)at Android.view.ViewRootImpl.performTraversals(ViewRootImpl.Java:1893)at Android.view.ViewRootImpl.doTraversal(ViewRootImpl.Java:1522)at Android.view.ViewRootImpl $ TraversalRunnable.run(ViewRootImpl .Java:7098)at Android.view.Choreographer $ CallbackRecord.run(Choreographer.Java:927)at Android.view.Choreographer.doCallbacks(Choreographer.Java:702)at Android.view.Choreographer.doFrame(Choreographer.Java: 638)at Android.view.Choreographer $ FrameDisplayEventReceiver.run(Choreographer.Java:913)at Android.os.Handler.handleCallback(Handler.Java:751)at Android.os.Handler.dispatchMessage(Handler.Java:95)at Android.os.Looper.loop(Looper.Java:154)at Android.app.ActivityThread.main(ActivityThread.Java:6682)at Java.lang.reflect.Method.invoke(Native Method)atcom.Android.internal。 com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:1410)のos.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.Java:1520)

8
MohanRaj S

垂直ガイドラインを使用する場合、それに制約されたビューは水平方向にそれを行う必要があり、水平方向のガイドラインについても同じことを行う必要があります。

あなたの場合、あなたはview_template_1を垂直方向のガイドラインに垂直に制約しているので、これを変更してください:

app:layout_constraintBottom_toTopOf="@+id/gL_right_margin"

水平ガイドラインによる

常にレイアウトをチェックし、ガイドラインに適切な制約を追加していることを確認してください。

11
Belbahar Raouf

ガイドラインの参照からプラス記号を削除してみてください。たとえばここでapp:layout_constraintEnd_toStartOf="@+id/gL_image_size_margin"

1
Yoric