/ / Прехвърляне на данни между интерфейсни контролери на Xcode 8.0 Swift 3.0 - swift, xcode, swift3, контролер за ябълки, wkinterfacecontroller

Прехвърляне на данни между интерфейсни контролери на Xcode 8.0 Swift 3.0 - swift, xcode, swift3, ябълков часовник, wkinterfacecontroller

Искам да предам низ между два интерфейсни контролера. На InterfaceController1 Искам да създам променлива като:

var level:String = ("easy")

и след това да имате достъп до тази променлива на InterfaceController2.

Бих предпочел да не използвам глобални променливи, тъй като съм наясно, че те не се препоръчват.

Има един отговор на StackOverFlow, но е създаден, когато Swift 1 е излязъл и не мога да намеря никакъв актуален ангел.

Благодаря

Отговори:

0 за отговор № 1

Имате няколко възможности да постигнете това.

  1. употреба pushController(withName:,context:) и поставете level като аргумент за въвеждане на контекст, а след това в интерфейсорконтролера2 awake(withContext:) използвайте тази променлива.
  2. Използвайте singletons (декларирайте променливата като статична), ако трябва да имате достъп до променливата на InterfaceController2 от няколко класа или ако не се насочите директно към InterfaceController2.

Ако трябва само да настроите тази променлива от InterfaceController1 и директно да представите InterfaceController2 от InterfaceController1, опция 1 е предпочитаният метод.