Ios 是否使用其他参数初始化隐式展开的选项?
我有一个带有Ios 是否使用其他参数初始化隐式展开的选项?,ios,objective-c,swift,Ios,Objective C,Swift,我有一个带有 @IBOutlet weak var webView: UIWebView! webView将由界面生成器初始化。在myinit()中,它仍然没有初始化 假设我想设置参数,如webView.delegate我应该将此代码放在哪里,以便只调用一次并在正确的时间调用它?视图控制器的生命周期是: 准备工作(如果被转接到) 出口设置 加载、出现和消失 因此,在viewdiload中,您可以确定插座已经设置好,并且可以分配代理 摘自CS193P注释: 实例化并设置出口后,调用viewDid
@IBOutlet weak var webView: UIWebView!
webView
将由界面生成器初始化。在myinit()
中,它仍然没有初始化
假设我想设置参数,如
webView.delegate
我应该将此代码放在哪里,以便只调用一次并在正确的时间调用它?视图控制器的生命周期是:
viewdiload
中,您可以确定插座已经设置好,并且可以分配代理
摘自CS193P注释:
实例化并设置出口后,调用viewDidLoad
这是一个放置大量设置代码的非常好的地方。
它比init好,因为在调用它时,您的插座都已设置好
视图控制器的生命周期为:
viewdiload
中,您可以确定插座已经设置好,并且可以分配代理
摘自CS193P注释:
实例化并设置出口后,调用viewDidLoad
这是一个放置大量设置代码的非常好的地方。
它比init好,因为在调用它时,您的插座都已设置好
视图控制器的生命周期为:
viewdiload
中,您可以确定插座已经设置好,并且可以分配代理
摘自CS193P注释:
实例化并设置出口后,调用viewDidLoad
这是一个放置大量设置代码的非常好的地方。
它比init好,因为在调用它时,您的插座都已设置好
视图控制器的生命周期为:
viewdiload
中,您可以确定插座已经设置好,并且可以分配代理
摘自CS193P注释:
实例化并设置出口后,调用viewDidLoad
这是一个放置大量设置代码的非常好的地方。
它比init好,因为在调用它时,您的插座都已设置好
另一种可能性是使用属性观察者:
@IBOutlet weak var webView: UIWebView! {
didSet {
webView.delegate = self
...
}
}
一旦设置了webview,就会调用它。另一种可能是使用属性观察者:
@IBOutlet weak var webView: UIWebView! {
didSet {
webView.delegate = self
...
}
}
一旦设置了webview,就会调用它。另一种可能是使用属性观察者:
@IBOutlet weak var webView: UIWebView! {
didSet {
webView.delegate = self
...
}
}
一旦设置了webview,就会调用它。另一种可能是使用属性观察者:
@IBOutlet weak var webView: UIWebView! {
didSet {
webView.delegate = self
...
}
}
设置webview后会立即调用此属性。如何确保这些属性只调用一次?
viewDidLoad
在加载控制器时只调用一次如何确保这些属性只调用一次?viewDidLoad
在加载控制器时只调用一次如何确保确保这些属性只调用一次?viewDidLoad
在加载控制器时只调用一次如何确保这些属性只调用一次?viewDidLoad
在加载控制器时只调用一次loaded@sasquatch如何确保这些属性只被称为once?@sasquatch如何确保这些属性只被调用一次?@sasquatch如何确保这些属性只被调用一次?@sasquatch如何确保这些属性只被调用一次?这会在viewdiloa之前还是之后设置属性?将一些println放入didSet和viewdiload中,看看会发生什么;)在viewdidload之前调用属性观察器!但是,当OP只想调用一次属性集时,它不是每次都会被调用吗。但是这个插座只设置一次,所以这是非常好的。:)设想一个视图在生命周期期间被设置为nil,并在以后重新实例化。如果在viewdidload中设置其委托,则稍后在生命周期中重新实例化的视图不会设置其委托。如果您使用属性观察者,它会。明白我的意思了吗?这会在viewdidla之前或之后设置属性吗?将一些printlns放入didSet中,然后放入viewdiddload中,看看会发生什么;)在viewdidload之前调用属性观察器!但是,当OP只想调用一次属性集时,它不是每次都会被调用吗。但是这个插座只设置一次,所以这是非常好的。:)设想一个视图在生命周期期间被设置为nil,并在以后重新实例化。如果在viewdidload中设置其委托,则稍后在生命周期中重新实例化的视图不会设置其委托。如果您使用属性观察者,它会。明白我的意思吗?这会在viewdiloa之前还是之后设置属性?将一些println放入didSet和viewdiload中,看看会发生什么;)在viewdidload之前调用属性观察器!但是,当OP只想调用一次属性集时,它不是每次都会被调用吗。但是这个插座只设置一次,所以这是非常好的。:)设想一个视图在生命周期期间被设置为nil,并在以后重新实例化。如果在viewdidload中设置其委托,则稍后在生命周期中重新实例化的视图不会设置其委托。如果您使用属性观察者,它会。明白我的意思吗?这会在viewdiloa之前还是之后设置属性?将一些println放入didSet和viewdiload中,看看会发生什么;)在viewdidload之前调用属性观察器!但是,当OP只想调用一次属性集时,它不是每次都会被调用吗。但是这个插座只设置一次,所以这是非常好的。:)设想一个视图在生命周期期间被设置为nil并重新设置