У меня есть мой ViewController.swift, который запускается при загрузке приложения. Затем я перехожу к другому файлу SecondViewController.swift.Понимание взаимодействия между файлами Swift - как мне звонить из одного в другой
Экземпляр ViewController.swift все еще существует, правильно?
Так что теперь, из SecondViewController.swift, я называю ViewController(). SomeFunction()
"viewDidLoad" не дозвонились, только функцию The ViewController, я специально призван.
Теперь: если я создаю переменную Int в ViewController.swift «var testNum = 2», а в представлении ViewControllerDidLoad меняю значение на 14. Затем я перехожу к SecondViewController. Затем я вызываю в ViewController(). SomeFunction(), и я печатаю значение testNum в этой функции, я получаю экземплярное значение 2 вместо значения, которое имеет ViewController, равное 14, что заставляет меня полагать, что я создал новая копия ViewController, вызвав функцию таким образом.
Это правильно? Это то, что я сделал? И если да, существует ли способ вызвать функцию в существующем ViewController вместо создания нового ViewController из SecondViewController.swift?
СПАСИБО!
Я собираюсь использовать это как правильный ответ для объяснения того, что ViewController() действительно создает новый экземпляр класса. Я пытался сохранить код SKProduct/SKPayment/In-App Purchase в моем основном ViewController, и, поскольку покупка в приложении производится из другого контроллера представления, я хотел вызвать покупку с помощью SKPaymentQueue.defaultQueue(). AddPayment (оплата) "в основном ViewController. Вместо этого я просто переместил код SKProduct/SKPayment/In-App Purchase в контроллер просмотра, из которого сделаны покупки. Благодаря! – RanLearns