在SwiftUI中管理视图层次结构

时间:2019-09-17 10:33:44

标签: ios swift swiftui

在SwiftUI中是否存在以下UIKit方法的等效项?

view.addSubview(aView)
view.removeFromSuperview()
view.bringSubviewToFront(aView)
view.sendSubviewToBack(aView)

基本上,我需要从oldSuperView中删除myView,将其添加到newSuperView中,并将newSuperView中已经存在的childView置于最前面

1 个答案:

答案 0 :(得分:1)

无等效项。因为每次更改状态时,视图都会完全重新构建。您可以对if/else使用hide/show等,甚至可以添加或不添加视图,但是如果不刷新视图就无法添加或删除。

您可以做的一件事是封装要添加或删除其子视图的视图,并更改其状态而不是其父视图。因此更改将在内部应用。