在 Android studio 的可视化布局编辑器中,我原本的组件树结构为这样:
ConstraintLayout1
- LinearLayout1
- Button1
- Button2
- ConstraintLayout2
- ConstraintLayout3
- Button3
- Button4
当我修改 ConstraintLayout1
的 background 属性的时候,布局文件的层次结构会自动变为以下状态:
ConstraintLayout1
- Button4
- LinearLayout1
- Button1
- Button2
- ConstraintLayout2
- ConstraintLayout3
- Button3
Button
变成了 ConstraintLayout1
下的第一个元素,请问这是什么原因导致的?
我的 Android studio 的版本为 3.6.1 。
1
chenjiajia9411 2020-05-13 10:20:29 +08:00
在约束布局里,写在后面的 view 会覆盖在前面的 view 上,你调整了前面 view 的属性并且没有做好约束之后就有可能出现这种问题。
还有,约束布局做出来就是为了解决套娃问题的,所以不要在约束布局里面也套娃了,像你第一个两个 button 完全可以用 chain 来解决约束。 |