我如何以编程方式更改在故事板中创建的segue的类型?
我想根据设备类型更改segue种类。对于.phone
故事板的类型"显示" (推)应该执行。对于.pad
,我想将segue类型更改为" modal"。
我会在prepareForSegue
中执行此操作,还是必须停止在shouldPerformSegueWithIdentifier
中执行segue并手动执行模式segue?
编辑:此问题主要关注更改segue类型,而不是如何识别设备类型。
答案 0 :(得分:-2)
试试这个:
enum UIUserInterfaceIdiom : Int {
case Unspecified
case Phone // iPhone and iPod touch style UI
case Pad // iPad style UI
}
并在viewDidLoad()
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewControllerWithIdentifier("vc2") as! myViewController
switch UIDevice.currentDevice().userInterfaceIdiom {
case .Phone:
self.presentViewController(vc, animated: true, completion: nil)
break
case .Pad:
self.showViewController(vc, sender: nil)
break
case .Unspecified:
// Do something
break
default:
// Do something
}