может что-то со стейтами ? буду очень признателен за помощь
var favBtn: UIButton = {
var btn = UIButton(type: .custom)
btn.translatesAutoresizingMaskIntoConstraints = false
btn.isEnabled = true
return btn
}()
...
videDidLoad() {
...
favBtn.setImage(UIImage(named: estateObject.is_fav ? "like_on.png" : "like_off.png"), for: .normal)
favBtn.addTarget(self, action: #selector(tapFavorite(_:)), for: .touchUpInside)
...
}
@objc func tapFavorite(_ sender: Any) {
let isFav: Bool = estateObject.is_fav ? false : true
estateObject.is_fav = isFav
...
try ObjectsStore.persistentContainer.viewContext.save()
...
let imageFileName = estateObject.is_fav ? "like_on.png" : "like_off.png"
favBtn.setImage(UIImage(named: imageFileName), for: .normal)
}
Просто для разных состояний установите разные картинки и меняйте состояние
Все операции с интерфейсом только на главном потоке
Обсуждают сегодня