elp*_*elp 34 iphone objective-c popover ipad uipopovercontroller
如何在iPhone应用程序中实现这个弹出菜单,就像在ipad中使用popover一样?
编辑:这是目前最好的:https://github.com/runway20/PopoverView
Sur*_*gch 30
从iOS 8开始,UIPopoverPresentationController
除了iPad之外,您还可以使用iPhone.
UIBarButtonItem
到主View Controller.UILabel
.如果您想要一个完整的菜单,那么只需添加一个表格视图或按钮列表.show
选择Present as Popover
.popoverSegue
(或在代码中调用它的任何字符串).这是主视图控制器的代码,其中包含条形按钮项.
class ViewController: UIViewController, UIPopoverPresentationControllerDelegate {
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "popoverSegue" {
let popoverViewController = segue.destinationViewController
popoverViewController.modalPresentationStyle = UIModalPresentationStyle.Popover
popoverViewController.popoverPresentationController!.delegate = self
}
}
// MARK: - UIPopoverPresentationControllerDelegate method
func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle {
// Force popover style
return UIModalPresentationStyle.None
}
}
Run Code Online (Sandbox Code Playgroud)
如果要将弹出窗口设置为显示在条形按钮项目之外的某个位置(UIButton
例如),则需要设置sourceView
和sourceRect
.有关详情,请参阅此答案.
以上示例主要来自第一个链接.
有一个甚至比WEPopover更好.它由一家名为50pixels的公司开发,名为FPPopover.
您可以在https://github.com/50pixels/FPPopover下载FPPopover
您必须使用自定义背景图像或透明图形手动实例化UIView,在顶部添加一些UIButtons(或其他类型的自定义视图),并以某种方式处理该视图外的所有触摸.
请注意,这是非标准UI.动作表将更符合HIG.
归档时间: |
|
查看次数: |
39691 次 |
最近记录: |