Я пытаюсь создать приложение для просмотра фильмов IMDB, в котором, когда пользователь не входит в систему и нажимает кнопку «Пропустить», кнопка «Избранное» (добавить фильм в избранное) исчезает.
LandingViewController находится там, где кнопка Пропустить, а MovieTableViewCell там, где представлены все данные.
Что я должен сделать, чтобы действие скрытия работало внутри функции? какая логика стоит за этим? что мне не хватает?
Пожалуйста, проверьте приведенные ниже комментарии в коде. спасибо!
import UIKit
class LandingViewController: UIViewController {
@IBOutlet weak var skipButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func didTapSkip(_ sender: Any) {
MovieTableViewCell().hideButton()
}
import UIKit
class MovieTableViewCell: UITableViewCell {
@IBOutlet weak var titleLabel: UILabel!
@IBOutlet weak var ratingLabel: UILabel!
@IBOutlet weak var languageLabel: UILabel!
@IBOutlet weak var releaseYearLabel: UILabel!
@IBOutlet weak var posterImage: UIImageView!
@IBOutlet weak var favoriteButton: UIButton?
override func awakeFromNib() {
super.awakeFromNib()
favoriteButton?.isHidden = true // works here for some reason
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
func hideButton() {
favoriteButton?.isHidden = true // doesn't work and If I unwrap it, the app will crash, because it will find the buttton as NIL for some reason
print("hidebutton") // the print works so the function works when the skip is pressed
}