【发布时间】:2011-12-22 01:43:23
【问题描述】:
我目前有一个 iPad 应用程序,其 UIToolbar 包含两个 UIBarButtonItems,每个都连接到一个弹出框。
当用户触摸任一 UIBarButtonItem 时,会创建弹出框而不是切换。这会创建多个重叠的弹出框。我已经能够使用以下代码关闭先前创建的弹出框
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// First close the preferences popover if it's open per Apple guidelines
if ([self.popoverA.popoverController isPopoverVisible]) {
[self.popoverA.popoverController dismissPopoverAnimated:YES];
}
if ([self.popoverB.popoverController isPopoverVisible]) {
[self.popoverB.popoverController dismissPopoverAnimated:YES];
}
... code to manage segues ...
}
我还有 UIButtons 可以创建行为正常的 popover segues。由于与 UIBarButtonItems 关联的弹出框的这种行为,我的应用程序被拒绝。是否有人对具有多个正常工作的 UIBarButtonItems 的 UIToolbar 有任何建议或任何代码示例?当用户在窗口外触摸时,弹出框会关闭,
【问题讨论】:
-
只是为了澄清我的问题。预期的行为是每次触摸按钮 (UIBarButtonItem) 时,弹出框应切换为打开或关闭,而不是始终打开。然而,segue 似乎总是创建另一个弹出框,而不是消除现有的可见弹出框。当链接到 UIButton 时,弹出框会适当地切换。
标签: ipad ios5 uibarbuttonitem segue