Swift 4: préparation(pour segue:) appelé viewDidLoad

J'ai 2 VCs: CouponVC et CouponFeedbackVC.

Coupon VC reçoit de la marque: la Marque! de son parentViewController.
Maintenant je veux passer le de la marque.nom à CouponFeedbackVC.

CouponVC.swift

var brandName: String!
override func viewDidLoad() {
    super.viewDidLoad
    brandName = brand.name
}

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "couponToFeedBack" {
        if let vc = segue.destination as? CouponFeedbackVC {
            print(brandName)
            vc.brandName = self.brandName
        }
    }
}

Dans CouponFeedbackVC.swift

var brandName: String!
override func viewDidLoad() {
    super.viewDidLoad()
    print("viewDidLoad")
    print(brandName)
}

 override func awakeFromNib() {
    print(brandName)
    self.view.layoutIfNeeded()
}

Journal De La Console

nil
viewDidLoad
nil
StayUncle

awakeFromNib() -> viewDidLoad() -> prepare(pour segue:)

Je ne suis pas d'accéder à tout points de vente à partir CouponFeedbackVC.

Pourquoi est préparer(pour segue: ) appelé viewDidLoad() et awakeFromNib()?

  • Comment êtes-vous d'effectuer des enchaînements en opération à partir de CouponVC ? À l'aide de storyboard opération push OU à l'aide de performSegueWithIdentifier ?
InformationsquelleAutor Aryan Sharma | 2017-10-07