我有一個最近更改了故事板的項目。將數據從VC調整到TabBar到VC(iOS)
之前,它是VC - > VC1 - > VC2,並使用此代碼到ViewControllers
if([segue.identified isEqualToString:@"SegueData"]){
StoreViewController *svc = [segue destinationViewController];
NSIndexPath *path = [allStoresTable indexPathForSelectedRow];
Stores *s = [stores objectAtIndex:path.row];
[svc setCurrentStores:s];
}
現在我需要從VC傳遞數據之間Segue公司數據 - >的TabBar - > VC1,VC2
現在我該怎麼做?
我試過這段代碼,與我的問題類似(http://www.raywenderlich.com/forums/viewtopic.php?f=2&t=2884),但應用程序在運行時崩潰。
UITabBarController *tabBarController = segue.destinationController;
UINavigationController *navController1 = [tabBarController.viewControllers objectAtIndex:0];
StoreViewController *svc= navController1.topViewController;
NSIndexPath *path = [allStoresTable indexPathForSelectedRow];
Stores *s = [stores objectAtIndex:path.row];
[svc setCurrentStores:s];
而且這條線是導致飛機失事的原因
StoreViewController *svc= navController1.topViewController;
給我的警告,「不兼容的指針類型初始化 'StoreViewController * _strong' 有型 '的UIViewController *'
有關使用的UITabBarController的viewControllers屬性是什麼?它包含標籤欄控制器的所有子視圖控制器。 – Florian 2013-03-16 20:09:05
我不明白你的意思。 – Claud 2013-03-16 20:14:12
viewControllers屬性可讓您訪問標籤欄中的每個VC。你可以這樣做:self.tabBarController.viewControllers [X]來訪問任何其他VC並在它們之間交換數據。 – Florian 2013-03-16 20:18:29