我正在为使用 ConstraintLayout 和 Barrier 的 Android 布局而苦苦挣扎

Posted

技术标签:

【中文标题】我正在为使用 ConstraintLayout 和 Barrier 的 Android 布局而苦苦挣扎【英文标题】:I am struggling with an Android layout with ConstraintLayout and Barrier 【发布时间】:2020-03-18 15:05:57 【问题描述】:

https://gist.github.com/dscoppelletti/62130db0ed773712bdfe0128b27e327b

小部件应该垂直渲染,除了一些应该水平渲染的对。

从上往下到小部件txtAddresscmdAddress都可以。 下一个小部件lblEventCategories,而不是跟随在下面,呈现在顶部,然后按照我想要的方式跟随下一个小部件。

我认为问题与Barrier 小部件有关,但我无法解决。

【问题讨论】:

【参考方案1】:

对于 TextView "lblEventCategories" 删除以下行:

app:layout_constraintBottom_toTopOf="@id/txtEventCategories"

将指南的顶部限制到底部就足够了。这将使事情朝着正确的方向发展。

可能还有其他问题,但这是一个。我建议回到布局的顶部,并逐个添加项目,然后在设计器中进行检查。

【讨论】:

太棒了!这就是诀窍,这对我的工作来说已经足够了。但是我想了解为什么只有这两个小部件不能链接,我担心 ConstraintLayout 的可靠性,所以我向谷歌发出了一个错误issuetracker.google.com/issues/144987885

以上是关于我正在为使用 ConstraintLayout 和 Barrier 的 Android 布局而苦苦挣扎的主要内容,如果未能解决你的问题,请参考以下文章

如何在motionlayout android中将Constraintlayout填充为轮播适配器中的视图?

使用 ConstraintLayout 以编程方式连接设置为任意大小的多个视图

ConstraintLayout 中的 ListView 在预览中展开为全屏

如何使 ConstraintLayout 中的元素居中

应该支持纵向和横向模式的 ConstraintLayout - 带有一个按钮来切换全屏

Android studio ConstraintLayout大小调整问题