Вы не предоставили достаточно контекста, однако я попытаюсь помочь вам в этом на основании четырех предположений:
- Вы устанавливаете начальное значение для объекта
user
, поскольку наблюдатели свойств требуют установки начального значения
- Вы используете наблюдателя свойств здесь, зная, что
didSet
не будет срабатывать, когда установлено начальное значение
- У вас есть свойство UIImageView, представляющее значок пола
- У вас есть значки для всех полов, которые вы хотите представить в своем каталоге активов
Если у вас есть imageView, называемый, например, «sexImageView», вы должны установить его в этом наблюдателе свойств следующим образом:
var user: User? {
didSet{
nameTextField.text = user?.username
genderLabel.text = user?.gender
var image = UIImage()
if user?.gender == "male" { // for example
image = UIImage(named: " name of male gender icon in asset catalog")
} else if user?.gender == "another gender string" {
image = UIImage(named: "name of this gender in your asset catalog")
} // more else-if blocks or else block here to support all genders you want
genderImageView.image = image
} // forgot your closing bracket here, or not showing enough information about this property observer
}