它能做什么
问题:
我无法想出一种在两个视图控制器之间传递数据的方法.无法根据segue标识符传递数据,因为它是标签栏控制器
请帮忙!
在VC1(集合视图)中,这是我的prepareforsegue代码:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let segue = segue.destinationViewController as TabBarViewController
var selectedIndex = self.collectionView.indexPathForCell(sender as UICollectionViewCell)
segue.selectedIndexPassing = selectedIndex?.row
}
Run Code Online (Sandbox Code Playgroud)
当我到达VC2(这是TabBarViewController)时,我printInn()selectedIndexPassing以查看返回的内容.它正确返回.然后,在VC2中,我将此prepareforsegue称为实际视图控制器,或标签栏中的第一个按钮:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
var segue = segue.destinationViewController as PlayerFromRosterViewController
segue.selectedIndexPassingForDisplay = 1
}
Run Code Online (Sandbox Code Playgroud)
但是,当我selectedIndexPassingForDisplay在VC3(PlayerFromRosterViewController)中println()时,我得到了nil.为什么变量没有从Tab Bar导航控制器传递到VC3,AKA是第一个标签栏按钮视图.