我想在用户点击UIButton时在弹出窗口控制器中显示自定义菜单。然后我想呈现另一个菜单,当用户按下另一个按钮时使用完全相同的方法。如何正确显示两个连续的UIPopoverControllers?
我的问题是这样的:当用户按下第一个按钮时,弹出窗口出现在我的菜单中,这没关系。但是当他按下第二个按钮时,我的应用程序只是放弃了第一个popover,而不是解散第一个popover,然后用第二个菜单展示第二个popover。然后当用户按下第二个按钮时,出现第二个弹出窗口。因此,用户必须按两次才能看到第二个菜单。
这是我如何创建菜单和酥料饼:
CascadeMenuViewController *cascadeMenuViewController = [[CascadeMenuViewController alloc] initWithNibName:@"CascadeMenuViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:cascadeMenuViewController];
[cascadeMenuViewController release];
navigationController.navigationBar.barStyle = UIBarStyleBlack;
_popoverMenuView = [[UIPopoverController alloc] initWithContentViewController:navigationController];
[navigationController release];
[_popoverMenuView presentPopoverFromRect:_currentlyTouchedButtonView.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];
这里是我解雇酥料饼,当用户选择从酥料饼里面的菜单STHG:
if (_popoverMenuView) {
[_popoverMenuView dismissPopoverAnimated:YES];
[_popoverMenuView release];
_popoverMenuView = nil;
}
灿你告诉我我做错了什么?
THX提前...
当用户点击第二个按钮时,您是否解散了第一个弹出窗口?或者你如何尝试并关闭它? – sergio 2011-06-10 19:51:17
当用户从弹出窗口中选择一个菜单项时,我将其解散。我的意思是从上面的代码开始if(_popoverMenuView)...然后当用户按下第二个按钮时,我创建一个新的UIPopoverController并将其分配给_popover,就像我在用户按下第一个按钮时那样。 (上面的第一个代码片段) – aslisabanci 2011-06-11 07:45:02