В ClassB вам нужно использовать UIStoryboard instantiateViewController(withIdentifier:)
для создания экземпляров IBOutlets.
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewController =
storyboard.instantiateViewController("AClassIdentifier") as!
AClass
И, тем не менее, представления IBOutlets не создаются, пока viewDidLoad () для этого класса. Вашему ClassA
понадобится второе свойство, такое как mapType
, а ClassB
устанавливает это свойство вместо непосредственно в представлении. Затем в ClassA viewDidLoad
вы можете установить фактический mapView на основе этого сохраненного свойства.