提前致谢。我目前正在开发iPad版本的应用程序,该应用程序在iPhone上有3个选项卡,每个选项卡加载3个不同的RSS提要,然后深入到iPhone上的导航控制器的细节。在iPad上,有意义的是,我在第一个分割视图中加入了2个供稿,然后为第3个供稿分别提供了一个主要和详细信息。iPad拆分视图中的多个主视图和详细视图,uisplitview
完成此操作的最佳做法是什么?我现在有建立在第一的DetailView工具栏按钮,它调用其切换主和细节为使
- (void)switchViews {
VideoSelectorViewController *masterViewController = nil;
VideoDetailiPadViewController *detailViewController = nil;
UIViewController *tempDetail = [self.splitViewController.viewControllers objectAtIndex:1];
UIViewController *tempMaster = [self.splitViewController.viewControllers objectAtIndex:0];
[tempDetail.view removeFromSuperview];
[tempMaster.view removeFromSuperview];
[tempDetail release];
[tempMaster release];
tempDetail = nil;
tempMaster = nil;
// if (row == 1) {
VideoSelectorViewController *newMasterViewController = [[VideoSelectorViewController alloc] initWithNibName:@"VideoSelectorViewController" bundle:nil];
masterViewController = newMasterViewController;
VideoDetailiPadViewController *newDetailViewController = [[VideoDetailiPadViewController alloc] initWithNibName:@"VideoDetailiPadViewController" bundle:nil];
detailViewController = newDetailViewController;
// }
// Update the split view controller's view controllers array.
NSArray *viewControllers = [[NSArray alloc] initWithObjects:masterViewController, detailViewController, nil];
self.splitViewController.viewControllers = viewControllers;
[viewControllers release];
/* // Dismiss the popover if it's present.
if (popoverController != nil) {
[popoverController dismissPopoverAnimated:YES];
}*/
// Configure the new view controller's popover button (after the view has been displayed and its toolbar/navigation bar has been created).
// if (detailViewController.popover != nil) {
[detailViewController showRootPopoverButtonItem:detailViewController.rootPopoverButtonItem];
//}
[masterViewController release];
[detailViewController release];
}
当iPad处于横向而是纵向的barbutton不显示此工程确定了的appdelegate工具栏,我怎么能调用 - (void)splitViewController:(UISplitViewController *)svc willHideViewController编程?此外,我的方法的内存管理,我应该释放,并设置为无以前的主和细节,因为我在我的switchViews方法中的那些临时对象?
另一种方法是将新主人推到旧的位置,只需更换详细信息即可。这是更好的,聪明的内存,性能等再次感谢