[英]Passing data between controllers gives an error due to complicated segue
我有一個模態選擇,它從視圖控制器到嵌入在表格視圖中的選項卡欄控制器,如您從此屏幕截圖中所見:
我想在登錄屏幕和表視圖之間傳遞數據。 我使用以下代碼:
-(IBAction)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"Enter App"]){
//Pass on username so that app can set everything up for that specific user
GamesListTableViewController *gamesList = (GamesListTableViewController *)segue.destinationViewController;
if ([segue.destinationViewController isKindOfClass:[GamesListTableViewController class]]) {
NSLog(@"ENTERING PROPER CLASS");
}
else{
NSLog(@"ENTERING WRONG CLASS");
}
gamesList.userID = self.userID;
}
}
由於最后一行代碼,我的應用程序崩潰了。 然后我檢查了原因(如您在上面的代碼中看到的),原因是segue的目的地不是GamesListTableViewController,而是我假設的是選項卡欄控制器。 我該如何解決這個問題?
UITabbarController *tabController = (UITabbarController*) segue.destinationViewController;
UINavigationController *nav = (UINavigationController*) tabController.viewControllers[0]; // or some other nr
GamesListTableViewController *tvc = nav.topViewController;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.