Почему инициализация объекта UIImageView с изображением возвращает ноль? - PullRequest
0 голосов
/ 02 октября 2018
@IBOutlet weak var checkMark: UIImageView!
override func viewDidLoad() {
    checkMark = UIImageView(image: UIImage?)
}

Я инициализировал объект и установил его с помощью UIImage.Я думаю, что это инициализирует объект с изображением там, поэтому он должен отображаться на экране, но он возвращает ноль, когда checkMark.isHidden = true.

Итак, я использую этот метод, просто установите изображение вактивы до checkMark.image.Это работает, но я не знаю, в чем разница между этими двумя.

checkMark.image = #imageLiteral(resourceName: "answerCheckMark.png")

1 Ответ

0 голосов
/ 02 октября 2018

Кажется, это выход, поэтому не делайте этого

checkMark = UIImageView(image:myImage)

, так как это изменит ссылку weak var на неподдерживаемые (UIImageView(image:myImage)) rhs, что сделает его равным нулю.Прочитайте предупреждение, которое показывает код в этой строке, поэтому измените только свойство изображения

...