一、报错信息
约束布局中 , 如果不给组件添加约束 , 就会报如下错误 :
Missing Constraints in ConstraintLayout
This view is not constrained. It only has designtime positions,
so it will jump to (0,0) at runtime unless you add the constraints
The layout editor allows you to place widgets anywhere on the canvas,
and it records the current position with designtime attributes (such as layout_editor_absoluteX).
These attributes are not applied at runtime, so if you push your layout on a device,
the widgets may appear in a different location than shown in the editor.
To fix this, make sure a widget has both horizontal and vertical
constraints by dragging from the edge connections.
Issue id: MissingConstraints Vendor: Android Open Source Project Contact:
https://groups.google.com/g/lint-dev
Feedback: https://issuetracker.google.com/issues/new?component=192708
二、解决方案
1、手动添加约束 ( 推荐 )
Design 界面拖动添加约束操作 : 手动拖动 布局上下左右的 约束按钮 , 添加约束 ;
Code 代码添加约束 : 在代码中 , 添加 如下 上下左右的 约束 ;
app:layout_constraintBottom_toTopOf=“@+id/guideline3”
app:layout_constraintEnd_toEndOf=“parent”
app:layout_constraintStart_toStartOf=“parent”
app:layout_constraintTop_toTopOf=“parent”
组件约束完整示例如下 :
<androidx.fragment.app.FragmentContainerView
android:id="@+id/fragmentContainerView1"
android:name="kim.hsl.livedatademo.Fragment1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toTopOf="@+id/guideline3"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
2、自动添加约束
使用 Design 面板中的 Infer Constraints 工具 , 可以自动为组件添加约束 ;文章来源:https://www.toymoban.com/news/detail-480065.html
文章来源地址https://www.toymoban.com/news/detail-480065.html
到了这里,关于【错误记录】约束布局报错 ( Missing Constraints in ConstraintLayout. This view is not constrained. It only has )的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!