我正在制作一个splitView应用程序,我想要不同的详细视图控制器,我已经研究了许多使用苹果MultipleDetailView控制器,但它没有完全采用所以任何人都可以使用它所以有任何方法来完成这个意味着不同适用于所有人的detailViewController.
解决方法
嗨纳粹我刚刚找到解决方案从
http://kshitizghimire.com.np/uisplitviewcontroller-multipledetailviews-with-navigation-controller/
你可以这样做: –
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after app launch. self.splitViewController =[[UISplitViewController alloc]init]; self.rootViewController=[[RootViewController alloc]init]; self.detailViewController=[[FirstDetailViewController alloc]init]; UINavigationController *rootNav=[[UINavigationController alloc]initWithRootViewController:rootViewController]; UINavigationController *detailNav=[[UINavigationController alloc]initWithRootViewController:detailViewController]; self.splitViewController.viewControllers=[NSArray arrayWithObjects:rootNav,detailNav,nil]; self.splitViewController.delegate=self.detailViewController; // Add the split view controller's view to the window and display. [window addSubview:self.splitViewController.view]; [window makeKeyAndVisible]; return YES; } -(void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { /* When a row is selected,set the detail view controller's detail item to the item associated with the selected row. */ NSUInteger row = indexPath.row; [self.appDelegate.splitViewController viewWilldisappear:YES]; NSMutableArray *viewControllerArray=[[NSMutableArray alloc] initWithArray:[[self.appDelegate.splitViewController.viewControllers objectAtIndex:1] viewControllers]]; [viewControllerArray removeLastObject]; if (row == 0) { self.firstDetailViewController=[[[FirstDetailViewController alloc] init]autorelease]; [viewControllerArray addobject:self.firstDetailViewController]; self.appDelegate.splitViewController.delegate = self.firstDetailViewController; } if (row == 1) { self.secondDetailViewController=[[[SecondDetailViewController alloc]init]autorelease]; [viewControllerArray addobject:self.secondDetailViewController]; self.appDelegate.splitViewController.delegate = self.secondDetailViewController; } [[self.appDelegate.splitViewController.viewControllers objectAtIndex:1] setViewControllers:viewControllerArray animated:NO]; [self.appDelegate.splitViewController viewWillAppear:YES]; [viewControllerArray release]; }
你也可以查看这个演示http://kshitizghimire.com.np/wp-content/uploads/2011/01/MultipleDetailViewsWithNavigator.zip
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。