我已经使用UISplitViewController研究了他们提供的示例。我创建了三个详细视图,并将它们配置为通过默认方式更改。在横向中使用左/主视图并在纵向中使用弹出框。
现在我尝试通过在每个视图中使用向左/向右滑动从currentView移动到另一个视图(上一个/下一个)。为此,我所做的只是在RootViewController中创建了一个函数。我从RootViewController复制粘贴了与poprow使用的tablerow选择相同的代码。我从当前视图的控制器调用此函数,并从当前视图传递视图的相应索引(下一步显示)。正在调用函数但没有任何事情发生。
Plz帮助我或者除了这个复杂的步骤之外还有其他方法吗?我正在提供用于更改视图的功能。
- (void) rearrangeViews:(int)viewRow
{
UIViewController <SubstitutableDetailViewController> *detailViewController = nil;
if (viewRow == 0) {
DetailViewController *newDetailViewController = [[DetailViewController alloc] initWithNibName:@"DetailView" bundle:nil];
detailViewController = newDetailViewController;
}
if (viewRow == 1) {
SecondDetailViewController *newDetailViewController = [[SecondDetailViewController alloc] initWithNibName:@"SecondDetailView" bundle:nil];
detailViewController = newDetailViewController;
}
if (viewRow == 2) {
ThirdDetailViewController *newDetailViewController = [[ThirdDetailViewController alloc] initWithNibName:@"ThirdDetailView" bundle:nil];
detailViewController = newDetailViewController;
}
// Update the split view controller's view controllers array.
NSArray *viewControllers = [[NSArray alloc] initWithObjects:self.navigationController, detailViewController, nil];
splitViewController.viewControllers = viewControllers;
[viewControllers release];
if (rootPopoverButtonItem != nil) {
[detailViewController showRootPopoverButtonItem:self.rootPopoverButtonItem];
}
[detailViewController release];
}
答案 0 :(得分:0)
我用Google搜索并找到了一个很好的方法。他们在详细视图上使用UINavigationController来推送新视图。您可以为项目使用相同的解决方案。
http://www.cimgf.com/2010/05/24/fixing-the-uisplitviewcontroller-template/