如何获取最外层的 parent UIView 容器?
How to get outermost parent UIView container?
如何获得我当前 self
UIView
的大 parent 视图,目前我正在使用 self.superview?.superview?.superview?.superview?.superview?.superview?
它看起来有点奇怪,而不是使用上面的语法是他们获得 main UIView
的任何其他方式,否则我怎么能阻止这个可选的链接 guard
?
您可以将 guard
与 returns 可选的方法一起使用,(我假设您是从 UIView 自定义 class 调用它)。
private func outerMostParent(view:UIView)-> UIView? {
guard let parent = superview?.superview?.superview?.superview?.superview?.superview
else{
return nil
}
return parent
}
然后你可以
self.outerMostParent(self)?.addSubview(yourSubview)
如何获得我当前 self
UIView
的大 parent 视图,目前我正在使用 self.superview?.superview?.superview?.superview?.superview?.superview?
它看起来有点奇怪,而不是使用上面的语法是他们获得 main UIView
的任何其他方式,否则我怎么能阻止这个可选的链接 guard
?
您可以将 guard
与 returns 可选的方法一起使用,(我假设您是从 UIView 自定义 class 调用它)。
private func outerMostParent(view:UIView)-> UIView? {
guard let parent = superview?.superview?.superview?.superview?.superview?.superview
else{
return nil
}
return parent
}
然后你可以
self.outerMostParent(self)?.addSubview(yourSubview)