UISplitViewController推动多个详细视图iPad上的按钮点击主视图
问题描述:
我有主视图控制器,其中包含几个按钮,而不是tableview。我想在不同的按钮点击时打开不同的细节视图。UISplitViewController推动多个详细视图iPad上的按钮点击主视图
我有下面列出的代码,但是这不显示任何更改。
- (IBAction)NewEntryBtn:(UIButton *)sender
{
NSLog(@"new entry btn");
[self.appdelegate.splitViewController viewWillDisappear:YES];
NSMutableArray *viewControllerArray=[[NSMutableArray alloc] initWithArray:[[self.appdelegate.splitViewController.viewControllers objectAtIndex:1]viewControllers]];
[viewControllerArray removeLastObject];
self.secondVC=[[SecondDetailViewController alloc] init];
[viewControllerArray addObject:self.secondVC];
self.appdelegate.splitViewController.delegate = self.secondVC;
[[self.appdelegate.splitViewController.viewControllers objectAtIndex:1] setViewControllers:viewControllerArray animated:NO];
[self.appdelegate.splitViewController viewWillAppear:YES];
}
- (IBAction)EditBtn:(UIButton *)sender
{
[self.appdelegate.splitViewController viewWillDisappear:YES];
NSMutableArray *viewControllerArray=[[NSMutableArray alloc] initWithArray:[[self.appdelegate.splitViewController.viewControllers objectAtIndex:1]viewControllers]];
[viewControllerArray removeLastObject];
self.secondVC=[[SecondDetailViewController alloc] init];
[viewControllerArray addObject:self.secondVC];
self.appdelegate.splitViewController.delegate = self.secondVC;
[[self.appdelegate.splitViewController.viewControllers objectAtIndex:1] setViewControllers:viewControllerArray animated:NO];
[self.appdelegate.splitViewController viewWillAppear:YES];
}
有人可以提出改变吗?
答
那么,你可以通过一种方法做到这一点。
首先将所有按钮设置为tag
,并将所有按钮的引用添加到单一方法。
- (IBAction)btnClicked:(id)sender
{
int btnNo = ((UIControl *) sender).tag;
NSLog(@"Button Clicked - %d", btnNo);
if (btnNo == 1)
{
// Navigate to first detail view controller
}
else if (btnNo == 2)
{
// Navigate to second detail view controller
}
.
.
and so on.
}