Ios UITabBar的Topview控制器
我有一个显示父文件夹详细信息的表视图。当我选择一行时,我希望它显示相应子文件夹的内容,该子文件夹有两个使用选项卡栏控制器的窗口——一个用于显示明细表,另一个用于显示图形 问题是我在找到的代码无法显示选定索引路径中的内容,而是一个0或任何手动输入数字的固定索引。我可能是错误的,这会影响显示的结果,我不确定 我的代码可以在即时窗口中显示正确的内容,但是链接到选项卡栏控制器的第二个窗口根本不显示任何内容。我交换了窗口,同样的问题-第一个窗口显示,第二个窗口不显示 这是我的备考代码:Ios UITabBar的Topview控制器,ios,objective-c,iphone,ipad,Ios,Objective C,Iphone,Ipad,我有一个显示父文件夹详细信息的表视图。当我选择一行时,我希望它显示相应子文件夹的内容,该子文件夹有两个使用选项卡栏控制器的窗口——一个用于显示明细表,另一个用于显示图形 问题是我在找到的代码无法显示选定索引路径中的内容,而是一个0或任何手动输入数字的固定索引。我可能是错误的,这会影响显示的结果,我不确定 我的代码可以在即时窗口中显示正确的内容,但是链接到选项卡栏控制器的第二个窗口根本不显示任何内容。我交换了窗口,同样的问题-第一个窗口显示,第二个窗口不显示 这是我的备考代码: -(void)pr
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([[segue identifier] isEqualToString:@"showFileDetails"]){
UINavigationController * navigate = segue.destinationViewController;
//create a reference to the index path
NSIndexPath * indexPath = [self.tableView indexPathForSelectedRow];
FileDetailsVC * fileDetails = (FileDetailsVC *)[navigate.viewControllers objectAtIndex: 0];
//Create a reference to the parent folder that is being selected
ParentFile * selectedFile = (ParentFile*)[self.fetchedResultsController objectAtIndexPath:indexPath];
//reference it to the the next view
fileDetails.selectedFile = selectedFile;
}
}
我尝试在[navigate.viewControllers objectAtIndex:]中使用“indexPath”;并将objectAtIndex更改为objectAtIndexPath,但它会给出错误消息“指向整数的指针不兼容…”和“对于'NSArray'没有可见的@interface声明选择器'objectAtIndexPath'
希望没什么难解决的。谢谢 Segue的目标控制器是UIDABBARC控制器,而不是UINavigationController。您没有在“其他”选项卡中为视图控制器设置任何数据源,因此没有看到任何内容
UITabBarController * tabBarController = segue.destinationViewController;
ViewControllerForTabItem2 * controller = (ViewControllerForTabItem2 *)[tabBarController.viewControllers objectAtIndex:1];
controller.dataSource = selectedFile;
非常感谢。我以为是那样的小事。现在工作正常。您是否知道如何通过tabbar通过导航将详细信息从Tableview传递到视图?我想让导航控制器用于另一个链接,但它会抛出错误,因为它无法识别细节。您能否更具体地说明您想要实现的目标。我想实现与此问题完全相同的结果,但是,在两个视图中的一个视图中,我嵌入了一个导航控制器,因为它没有正确显示。这也有助于将其命名为不同于添加按钮的选项卡栏中的第一个vc。假设您将导航控制器命名为nav,则nav.topViewController是您的View 1控制器。您可以将selectedFile设置为View 1控制器。