Mat*_*att 101
是的,它可以做到:
[self.popoverController presentPopoverFromBarButtonItem:anItem
permittedArrowDirections:0
animated:YES];
Run Code Online (Sandbox Code Playgroud)
零代表没有方向.
小智 22
对于iPhone和swift 2.0试试这个
用于启动弹出窗口的代码
initiatePopover(){
let popoverContent = self.storyboard?.instantiateViewControllerWithIdentifier("XYZController") as! XYZController
let nav = UINavigationController(rootViewController: popoverContent)
nav.modalPresentationStyle = UIModalPresentationStyle.Popover
let popover = nav.popoverPresentationController
popoverContent.preferredContentSize = CGSizeMake(250 ,200)
popover!.delegate = self
popover!.sourceView = self.view
popover!.sourceRect = CGRectMake(200,200,0,0)
popover!.permittedArrowDirections = UIPopoverArrowDirection(rawValue: 0)
self.presentViewController(nav, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)
并将其添加到ViewController中
func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle {
return UIModalPresentationStyle.None
}
Run Code Online (Sandbox Code Playgroud)
设置permittedArrowDirections为0.
permittedArrowDirections:0
Run Code Online (Sandbox Code Playgroud)
代码 -
[self.popoverController presentPopoverFromBarButtonItem:anItem
permittedArrowDirections:0
animated:YES];
Run Code Online (Sandbox Code Playgroud)
零告诉"NoDirection".
Swift3,这段代码对我有用
popover.permittedArrowDirections = .init(rawValue: 0)
Run Code Online (Sandbox Code Playgroud)
对于Swift 2.0和iOS9解决方案是:
popoverViewController?.permittedArrowDirections = UIPopoverArrowDirection()
Run Code Online (Sandbox Code Playgroud)
小智 5
在 swift 3 中,您可以UIPopoverArrowDirection为此构建一个扩展:
extension UIPopoverArrowDirection {
public static var noArrow: UIPopoverArrowDirection {
return UIPopoverArrowDirection(rawValue: 0)
}
}
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
popoverPresentationController!.permittedArrowDirections = .noArrow
Run Code Online (Sandbox Code Playgroud)
小智 5
在 Swift 中,您可以简单地执行以下操作:
popoverPresentationController.permittedArrowDirections = []
Run Code Online (Sandbox Code Playgroud)
因为在另一种配置中,您可以使用:
popoverPresentationController.permittedArrowDirections = [.up, .down]
Run Code Online (Sandbox Code Playgroud)