Я пытаюсь создать подкласс UIImageView
в Swift, который показывает изображение, полученное из пользовательского свойства (исходящего из моей модели). Код, который я использую, является следующим:Переопределить образ UIImageView
class AvatarImageView: UIImageView {
var userProfile: UserProfile?
override var image: UIImage? {
set {}
get {
return self.userProfile?.avatar
}
}
}
К сожалению, это не работает. Изображение никогда не отображается. Я также попробовал позвонить setNeedsDisplay
, но не повезло. Я был бы рад за предложения.
Это работает как шарм, спасибо! Можете ли вы объяснить, почему другая версия не работает? – BlackWolf
Спасибо за связанную статью, я прочитал ее перед публикацией. Я понимаю, что пустой сеттер является проблемой, потому что нет возможности для представления знать, когда изображение действительно изменилось. Я все еще не понимаю, почему вызов 'setNeedsDisplay' из' didSet' 'userProfile' не работает. – BlackWolf
@BlackWolf Что значит «не работает»? Вы вызываете 'setNeedsDisplay' в' userProfile' 'didSet' и' AvatarImageView' не обновляет новый набор 'userProfile.avatar'? – Ryan