我试图理解为什么在这个例子中使用了它。它是来自页面控制器的一块显示图像(图像滑块)
代码:
import UIKit
class PageItemController: UIViewController {
// MARK: - Variables
var itemIndex: Int = 0
var imageName: String = "" {
didSet {
if let imageView = contentImageView {
imageView.image = UIImage(named: imageName)
}
}
}
@IBOutlet var contentImageView: UIImageView?
// MARK: - View Lifecycle
override func viewDidLoad() {
super.viewDidLoad()
print(imageName)
contentImageView!.image = UIImage(named: imageName)
}
}
我尝试了相同的代码,但没有didSet
,我没有注意到速度等方面的任何变化,为什么要使用?
答案 0 :(得分:1)
如果设置了didSet
,imageName
实际上会将imageName
字符串设置为uiimage。
如果从任何其他视图分配imageName,则应使用如下代码:
override func viewDidLoad() {
super.viewDidLoad()
}
答案 1 :(得分:0)
如果您使用didSet,则可以通过设置imageName
来更改显示的图像。
答案 2 :(得分:0)
而是使用这个:
let image = UIImage(named: "*Name of image in assets*")
并确保实际图像在项目资产中。