缺少障碍的约束警告 - Bug?

时间:2018-04-20 19:19:26

标签: android android-constraintlayout

我在1.1.0上收到了缺失的约束警告,该警告已添加到ConstraintLayout的(现在稳定的)版本Barrier

  

此视图不受约束,只有设计时位置,因此除非添加约束,否则它将跳转到(0,0)

但是,根据我的知识,{{1}}不使用任何约束,我认为甚至不可能添加它们

这是一个错误还是我错过了什么?

3 个答案:

答案 0 :(得分:22)

如果您在屏障上定义了tools:layout_editor_absoluteX="123dp"tools:layout_editor_absoluteY="384dp"之类的内容,请将其删除,警告就会消失。

答案 1 :(得分:1)

您是否遇到此类错误

enter image description here

尝试以这种方式添加障碍

<android.support.constraint.Barrier
    android:id="@+id/barrier"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:constraint_referenced_ids="view1,view2" />

答案 2 :(得分:0)

也许您忘记了指定 barrierDirection 参数:

    <android.support.constraint.Barrier
    android:id="@+id/barrier"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:barrierDirection="end"
    app:constraint_referenced_ids="view1,view2" />

指定“ barrierDirection”作为结束位置将通知屏障位于参考ID中指定的最宽视图的末端。

但是在设计时,您的设计师可能不会刷新障碍位置...就像我这样: barrier constraint not calculated on designer

编辑: 在清理缓存并迁移到ConstraintLayout'2.0.0-alpha3'之后,屏障将在设计时正确显示。