在 Jetpack Compose 中,ConstraintLayout 仍然优先于嵌套的列和行吗?

day*_*stu 6 android kotlin android-constraintlayout android-jetpack-compose

在 Compose 之前,使用 XML 创建复杂的 UI 时,建议避免嵌套视图(RelativeLayoutLinearLayout),并鼓励使用ConstraintLayout以实现复杂的布局。

现在 Compose 已经出来了,ConstraintLayout从我的角度来看,在 Compose 中理解它是如此复杂 -ConstraintLayout与嵌套ColumnRow.

老实说,我宁愿使用嵌套ColumnRow不是ConstraintLayoutCompose,但我不确定它的缺点。

Rya*_*ley 9

简短回答:不,嵌套Rows/ Columns 应该没问题。


Compose 旨在减少嵌套布局的惩罚,并使布局更容易......好吧,组合。View 系统需要为View您创建的每个对象带来不小的开销,因此鼓励避免不必要地嵌套它们并创建额外的Views。

虽然很难说有没有情况,即嵌套RowS和Column旨意导致性能问题,在ConstaintLayout将工作做好,你不应该立即跳转到ConstraintLayout使用时嵌套RowS / Columns就使您能够更轻松地表达你想要的布局。


请注意,目前 Compose 是预稳定的,因此随着开发的继续,性能特征可能会发生变化(通常会变得更好)。