#swift
#swift
Вопрос:
У меня есть этот класс viewcontroller:
class ThirdScreenViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
var number = 1
@IBAction func pressed(_ sender: UIButton) {
number = 2
}
}
И у меня есть другой файл swift. (Не другого класса контроллера представления)
var newNumber = ThirdScreenViewController.number
Это не работает. Как я могу получить доступ в моем новом файле swift к этой переменной (2) из другого класса View Controller?
Ответ №1:
Самым простым решением было бы сделать свойство статическим:
class ThirdScreenViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
static var number = 1
@IBAction func pressed(_ sender: UIButton) {
ThirdScreenViewController.number = 2
}
}
После этого вы должны быть в состоянии вызвать переменную, как указано в вашем примере:
var newNumber = ThirdScreenViewController.number
Но использование статических свойств в таком случае — не лучшая практика.