Swift 中的 'public private' 访问控制是什么?
What is 'public private' access control in Swift?
public private(set) lazy var view: UIView()
据我了解 - 这是模块的 public 但 class 私有的?我很困惑。
首先,您提供的代码中存在错误。
您不能在任何 ViewController 中创建名称为 view 的对象,因为层次结构顶部的 superView 仅称为 查看
您必须生成对象以将其识别为 惰性。您必须生成对象并且它必须准备好使用 return 创建。换句话说,如果你想只在需要的时候创建对象,你必须使用惰性,所以它应该是这样的:
public private(set) lazy var yourView: UIView = {
return UIView()
}()
是时候回答您的问题了。
这意味着该对象是 public 获取和私有设置的,因此您可以从任何地方读取它,但只需将它写在创建它的地方。
public private(set) lazy var view: UIView()
据我了解 - 这是模块的 public 但 class 私有的?我很困惑。
首先,您提供的代码中存在错误。
您不能在任何 ViewController 中创建名称为 view 的对象,因为层次结构顶部的 superView 仅称为 查看
您必须生成对象以将其识别为 惰性。您必须生成对象并且它必须准备好使用 return 创建。换句话说,如果你想只在需要的时候创建对象,你必须使用惰性,所以它应该是这样的:
public private(set) lazy var yourView: UIView = { return UIView() }()
是时候回答您的问题了。
这意味着该对象是 public 获取和私有设置的,因此您可以从任何地方读取它,但只需将它写在创建它的地方。