在 iOS 13 中,弹出 View 菜单不会显示在可见的 UIWindow 上,尽管它存在于 keyWindow 的 View 层次结构中,如下所示
这是我呈现弹出菜单的方式:
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];
预期:
实际:
最佳答案
在 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/