【问题标题】:Manage views hierarchy in SwiftUI在 SwiftUI 中管理视图层次结构
【发布时间】:2019-09-17 10:33:44
【问题描述】:

在 SwiftUI 中是否存在等价于以下 UIKit 方法?

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

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

【问题讨论】:

    标签: ios swift swiftui


    【解决方案1】:

    没有等价物。因为每次更改状态时,都会完全重新构建视图。您可以使用if/else 或 etc 到 hide/show 甚至添加或不添加视图,但您不能在不刷新视图的情况下添加或删除。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-10
      • 1970-01-01
      • 2016-03-27
      • 1970-01-01
      • 2020-09-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多