如何显示SplitViewController中的barButtonItem?不是使用splitViewController自动创建的?
我创建了一个针对Ipad的projet,我把我的mainViewController作为控制器视图在纵向模式下在屏幕上,我用它的tableView创建了另一个uiviewController“RootViewController”。
我把两种方法放在一起:
- (void)splitViewController: (UISplitViewController*)svc willHideViewController:
- (void)splitViewController: (UISplitViewController*)svc willShowViewController:
在我的mainViewController中,例如:
// Called when rotating to a portrait orientation.
- (void)splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc
{
barButtonItem.title = @"Root List";
NSMutableArray *items = [[toolbar items] mutableCopy];
[items insertObject:barButtonItem atIndex:0];
[toolbar setItems:items animated:YES];
[items release];
self.mainPopoverController = pc;
}
(mainPopoverC ...在.h文件中设置:
UIPopoverController * mainPopoverController;
)
但模拟只显示了使用barButtomItem的mainViewController视图。
有什么想法吗?
非常感谢
答案 0 :(得分:1)
如果您的工具栏中没有商品,
[toolbar items]
是零,所以你的mutableCopy会进入深空......
答案 1 :(得分:1)
在willHideViewController
内尝试类似的内容:
UIBarButtonItem *menuButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Root List" style:UIBarButtonItemStyleBordered target:self action:@selector(showPopover:)];
NSMutableArray *items = [[NSMutableArray alloc] initWithArray:toolbar.items];
if ([items count]) {
[items insertObject:menuButtonItem atIndex:0];
[toolbar setItems:items];
}
[menuButtonItem release];
[items release];