我正在创建一个应用程序,它有tabbarcontroller,导航控制器和viewcontroller 故事板是这样的
现在,我可以通过类似这样的代码将一些来自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,NavigationController1的RootViewController)所以没有初始化。
如果我在SalesOrder.m中添加项目,它可以工作,所以我不认为这是任何委托问题。
问题出了问题
[self.tabBarController.viewControllers objectAtIndex:1];
谢谢