I am asked to removed the arrow of the popover view.
- Is that violating human interface guidelines ?
- Is it wise to show a popover inside another popover ?
- If it is not violating human interface guidelines how to do that ?
I am asked to removed the arrow of the popover view.
Sure thing, and there is plenty of call for this, specifically when the popover is large enough and the point at where the arrow would point would be obscured.
There's no usability drawback whatsoever.
[pop presentPopoverFromBarButtonItem:_toolbarBtnImage2
permittedArrowDirections:0 // <- pass in zero for no arrows
animated:YES];
The omission or removal of the arrow is implicitly banned by the 2012-03-07 Human Interface Guidelines, p. 114: "A popover ... always displays an arrow that indicates the point from which it emerged."
Hiding the popover arrow or showing one popover inside another does not sound very wise. I’m not sure if this is explicitly forbidden by the HIG, but it’s a usability drawback anyway. If you insisted you could draw your own arrowless popover or try to mask the arrow using some view composed on the top of it. I think it would be much better to rethink the UI.
myViewController.popoverPresentationController.permittedArrowDirections = UIPopoverArrowDirection(rawValue: 0)
Just to add some sugar and Swifty the code :
Extension:
extension UIPopoverArrowDirection {
static var none: UIPopoverArrowDirection { UIPopoverArrowDirection(rawValue: 0) }
}
Usage:
popoverMenuViewController?.permittedArrowDirections = .none
you can change the variable's name to fits your needs.