HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ipad – UIBarButtonItem popover segue创建了多个弹出窗口大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前有一个带有UIToolbar的iPad应用程序,其中包含两个UIBarButtonItem,每个UIBarButtonItem都连接到一个popover segue.

用户触摸任一UIBarButtonItem时,将创建弹出窗口而不是切换.这会创建多个重叠的弹出式窗口.我已经能够使用以下代码关闭以前创建的popover

- (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 ...
}@H_197_10@ 
 

我也有UIButtons,可以创建正常行为的popover segues.由于与UIBarButtonItems相关联的弹出窗口的这种行为,我的应用程序被拒绝.有人有任何UIToolbar的建议或任何代码示例,其中多个UIBarButtonItem正常工作吗?当用户触摸窗外时,弹出窗口会关闭

解决方法

当您在-prepareForSegue:sender:中收到消息时,取消segue为时已晚.

为了有效地执行此操作,您应该从视图控制器本身而不是条形按钮创建到弹出窗口的segue,以便它们仍然可以以编程方式执行.现在将uIBarButtonItems连接到一些有条件地呈现或解除popover的方法.

- (IBACtion)showPopoverA
{
    if (self.popoverA.popoverController.popoverVisiblE)
        [self.popoverA.popoverController dismissPopoverAnimated:YES];

    [self performSegueWithIdentifier:@"ShowPopoverA"];
}@H_197_10@

大佬总结

以上是大佬教程为你收集整理的ipad – UIBarButtonItem popover segue创建了多个弹出窗口全部内容,希望文章能够帮你解决ipad – UIBarButtonItem popover segue创建了多个弹出窗口所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。