我正在创建一个具有 tabbarcontroller、导航控制器和 viewcontroller 故事板的应用程序是这样的
标签栏控制器
- 1个视图控制器(ScanViewController)
- 2 NavigationController1 - UITableviewController (SalesOrder)
- 3 NavigationController2 - UITableviewController
- 4 导航控制器3
现在,我可以通过这样的代码将一些数据从 navigationcontroller1 的 rootviewcontroller 传递到视图控制器
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
ScanViewController *svc =[self.tabBarController.viewControllers objectAtIndex:0];
svc.company_name.text= cell.textLabel.text;
self.tabBarController.selectedIndex = 0;
}
但是,我不能像这样将数据从 viewController 传递到 navigationcontroller 的任何 rootviewcontroller 我的代码
-(IBAction)button_order{
SalesOrder *so =[self.tabBarController.viewControllers objectAtIndex:1];
so.sales_order_list_from_scan = [[NSMutableArray alloc] initWithObjects:@"SO 4",@"SO 5",nil];
self.tabBarController.selectedIndex = 1;
}
你能告诉我这里有什么问题吗?我检查了自己,似乎 SalesOrder(UITableview, RootViewController of NavigationController1) 所以没有初始化。如果我在 SalesOrder.m 中添加项目,它可以工作,所以我不认为这是任何委托问题。问题出在哪里
[self.tabBarController.viewControllers objectAtIndex:1];
谢谢你