【问题标题】:UIPopOver From UIButton for iPhone来自 iPhone 的 UIButton 的 UIPopOver
【发布时间】:2016-08-10 18:01:47
【问题描述】:

我们能否在 iPhone 设备中使用Swift 创建类似UIPopOver 的iPad,其中源为UIButton。我从UIBarButtonItem 创建了UIPopOver,它工作正常,但在UIButton 的情况下它不起作用。谁能尽快提出更好的解决方案。我需要在 iPhone 设备上工作。

【问题讨论】:

标签: ios iphone swift uipopover


【解决方案1】:

可以,但是需要实现popoverPresentationController的委托

let viewController = self.storyboard?.instantiateViewControllerWithIdentifier("AnnotationInfoViewController") as! PopUpViewController

//If you want to show view from XIB file you can create viewController instance like this
//let viewController = UIViewController()
//let myView = NSBundle.mainBundle().loadNibNamed("PopUpView", owner: self, options: nil)[0] as! PopUpView
//viewController.view = myView

//Pass the information that you want to show
viewController.data = passdata

//Set the viewController for popoverPresentationController 
viewController.modalPresentationStyle = .Popover
viewController.preferredContentSize = CGSize(width: viewController.view.frame.size.width, height: 80)
viewController.popoverPresentationController!.delegate = self;
viewController.popoverPresentationController!.permittedArrowDirections = [.Up , .Down]
viewController.popoverPresentationController!.sourceView = yourBtn!
viewController.popoverPresentationController!.sourceRect = yourBtn.frame
self.presentViewController(viewController, animated: true, completion: nil)

现在在你的ViewController 中实现popoverPresentationController 的这个方法

func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle {
    return .None;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-28
    • 2012-02-15
    • 1970-01-01
    相关资源
    最近更新 更多