iPhone 6 Plus 上的 UISplitViewController
UISplitViewController on iPhone 6 Plus
我在 iPhone 和 iPad 上申请了。我有 UISplitViewController
并在 iPad 上使用它。当我在 iPhone 6 Plus(模拟器)上启动我的应用程序时,UISplitViewController
不起作用。 (在 iPad 3 或 iPad Air 2 和 iPhone 5s 上效果很好)。我在我的代码中加入了以下内容。
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath){
if (UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Pad) {
performSegueWithIdentifier("showDetailParse", sender: nil)
} else if (UIDevice.currentDevice().userInterfaceIdiom == .Phone) {
performSegueWithIdentifier("showParse", sender: nil)
}
}
我的 iPad 屏幕效果很好
我的屏幕来自 iPhone 6 Plus(模拟器)
更新:
我更新了我的代码,它定义了它在哪个设备上工作并且它确实工作了!在代码中,我定义了当前设备的高度,如果大于 2000 像素,我使用 segue for iPad。但我不喜欢这个解决方案。有什么想法吗?
我更新后的代码如下。
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath){
var screen = UIScreen.mainScreen().currentMode?.size.height
if (UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Pad) || screen >= 2000 && UIDevice.currentDevice().orientation.isLandscape == true {
performSegueWithIdentifier("showDetailParse", sender: nil)
} else if (UIDevice.currentDevice().userInterfaceIdiom == .Phone) {
performSegueWithIdentifier("showParse", sender: nil)
}
}
根据我在您提供的屏幕上看到的内容 - 您已将 UITabBarController
嵌入到您的 MasterViewController 中。我以前也这样做过,诀窍是不要忘记你在哪里 推动 - 不在 UINavigationController
因为那不是大师,大师是 UITabBarController
.
我这样做了:
self.tabBarController?.performSegueWithIdentifier("showDetail", sender: nil)
这个故事板布局对我来说效果很好:
我在 iPhone 和 iPad 上申请了。我有 UISplitViewController
并在 iPad 上使用它。当我在 iPhone 6 Plus(模拟器)上启动我的应用程序时,UISplitViewController
不起作用。 (在 iPad 3 或 iPad Air 2 和 iPhone 5s 上效果很好)。我在我的代码中加入了以下内容。
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath){
if (UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Pad) {
performSegueWithIdentifier("showDetailParse", sender: nil)
} else if (UIDevice.currentDevice().userInterfaceIdiom == .Phone) {
performSegueWithIdentifier("showParse", sender: nil)
}
}
我的 iPad 屏幕效果很好
我的屏幕来自 iPhone 6 Plus(模拟器)
更新: 我更新了我的代码,它定义了它在哪个设备上工作并且它确实工作了!在代码中,我定义了当前设备的高度,如果大于 2000 像素,我使用 segue for iPad。但我不喜欢这个解决方案。有什么想法吗?
我更新后的代码如下。
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath){
var screen = UIScreen.mainScreen().currentMode?.size.height
if (UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Pad) || screen >= 2000 && UIDevice.currentDevice().orientation.isLandscape == true {
performSegueWithIdentifier("showDetailParse", sender: nil)
} else if (UIDevice.currentDevice().userInterfaceIdiom == .Phone) {
performSegueWithIdentifier("showParse", sender: nil)
}
}
根据我在您提供的屏幕上看到的内容 - 您已将 UITabBarController
嵌入到您的 MasterViewController 中。我以前也这样做过,诀窍是不要忘记你在哪里 推动 - 不在 UINavigationController
因为那不是大师,大师是 UITabBarController
.
我这样做了:
self.tabBarController?.performSegueWithIdentifier("showDetail", sender: nil)
这个故事板布局对我来说效果很好: