Ben prepareForSegue işlevinden segues kullanarak veri aktarmak için biliyorum, ama bir TableViewCell gereken şey hangi iki farklı ViewControllers (şimdi sadece iki olası Segues vardır şimdi A, B deyin). here önerisi, segmanların mükemmel bir şekilde çalıştığı tableCell'in kendisinden ziyade View denetleyicisini View controller'a bağlamak için önerildi. Ancak hücre tıklandığında ikinci View denetleyicisine bilgi aktarmak istiyorum, Kaynak ViewController'a bağlandığım segue'a nasıl erişilir.'didSelectRowAtIndexPath' de segue erişme -/Swift IOS
Kodu:
İçinde prepareForSegue
Yineif segue.identifier == "showQuestionnaire"{
if let indexPath = self.tableView.indexPathForSelectedRow() {
let controller = (segue.destinationViewController as! UINavigationController).topViewController as! QuestionnaireController
let patientQuestionnaire = patientQuestionnaires[indexPath.row] as! PatientQuestionnaire
controller.selectedQuestionnaire = patientQuestionnaire
self.performSegueWithIdentifier("showQuestionnaire", sender: self)
}
}
: Bu soru prepareForSegue
içinden bilgi aktarma konusunda değil
olmalıdır önce açıklandığı gibi metodun bir
performSegueWithIdentifier
dışında gerekir, ancak soru prepareForSegue veri göndermek için nasıl ise, performSegueWithIdentifier – user3435374gönderen alanını kullanın if ([segue.destinationViewController isKindOfClass: [A_VC class]]) {...} else {...} – OMGHaveFun
"prepareForSegue" dosyasındaki bilgilerin aktarılması, bunu yapmanın doğru yolu. Ancak kesinlikle readyForSegue' içinde 'performSegueWithIdentifier' çağrısı olmamalıdır. – dan