2016-08-10 10 views
0

Можем ли мы создать iPad как UIPopOver в устройствах iPhone, используя Swift, где источник UIButton. Я создал UIPopOver от UIBarButtonItem и его рабочий штраф, но он не работает в случае UIButton. Может ли кто-нибудь предложить лучшее решение как можно скорее. Мне нужно работать в устройстве iPhone.UIPopOver От UIButton для iPhone

+0

увидеть это http://stackoverflow.com/questions/ 28521583/uipopoverpresentationcontroller-на-Iphone-оленья кожа-изготовлять-поповер –

ответ

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) 

Теперь реализовать этот метод popoverPresentationController внутри вашего ViewController

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