ios - pod WEPopover 弹出菜单未显示为 currentTopViewcontroller。相反,它会转到 currentTopviewController View 层次结构的后面

标签 ios objective-c ios13

在 iOS 13 中,弹出 View 菜单不会显示在可见的 UIWindow 上,尽管它存在于 keyWindow 的 View 层次结构中,如下所示

enter image description here

这是我呈现弹出菜单的方式:

WEPopoverController *popover = [[WEPopoverController alloc] initWithContentViewController:menuVc];
    self.popoverController = popover;
    if ([popover respondsToSelector:@selector(setContainerViewProperties:)]) {
        [popover setContainerViewProperties:[CPGlobals popoverStyling]];
    }
    popover.delegate = self;
    //self.popoverController.passthroughViews =
    //[NSArray arrayWithObject:self.navigationController.navigationBar];

    menuVc.containerPopover = popover;

    [self.popoverController presentPopoverFromBarButtonItem:self.navigationItem.rightBarButtonItems[0]
                                   permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];

预期:

enter image description here

实际:

enter image description here

最佳答案

在 WEPopoverController.m 中,将方法 keyView() 更改为:

if (w.subviews.count > 0) {
    return [w.subviews objectAtIndex:0];
} else {
    return w;
}

至:

if (w.subviews.count > 0) {
    return [w.subviews objectAtIndex:[w.subviews count]-1];
} else {
    return w;
}

关于ios - pod WEPopover 弹出菜单未显示为 currentTopViewcontroller。相反,它会转到 currentTopviewController View 层次结构的后面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58368402/

相关文章:

objective-c - 带有小数点分隔符的 NSString 到 NSNumber

ios - ios中的声音音量

objective-c - 设计数据加载和对象创建的正确方法

iphone - 将 DropBox 集成到 iphone 应用程序时出错

ios - 无法通过 Objective-C 在 iOS13.x 上获取 AVPlayerLayer

html - iOS 13 Swift 5 wkwebview - 将文档目录中的图像显示到 wkwebview 真实设备中

ios - willDisplayCell 委托(delegate)方法 Swift

ios - 使用 NSURLSession 异步下载和处理数据

iphone - 区分 UITableView 编辑状态?

ios - CBPeripheral.ancsAuthorized 信息不可靠