Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 尝试以编程方式更改情节提要时出错_Ios_Swift_Uiviewcontroller - Fatal编程技术网

Ios 尝试以编程方式更改情节提要时出错

Ios 尝试以编程方式更改情节提要时出错,ios,swift,uiviewcontroller,Ios,Swift,Uiviewcontroller,我得到一个错误:“使用未解析的标识符'present'”。我正在尝试根据用户设备的高度更改情节提要 错误出现在以下行:present(viewC,动画:true,完成:nil) 因为您在AppDelegate类中,所以没有名为的函数可以使用 如果需要从AppDelegate显示任何Viewcontroller,请将其添加到窗口中 let mainStoryboardIpad : UIStoryboard = UIStoryboard(name: "Main", bundle: nil) let

我得到一个错误:“使用未解析的标识符'present'”。我正在尝试根据用户设备的高度更改情节提要

错误出现在以下行:
present(viewC,动画:true,完成:nil)


因为您在AppDelegate类中,所以没有名为
的函数可以使用

如果需要从AppDelegate显示任何Viewcontroller,请将其添加到窗口中

let mainStoryboardIpad : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let initialViewController : UIViewController = mainStoryboardIpad.instantiateViewController(withIdentifier: "ViewController") as UIViewController
            self.window = UIWindow(frame: UIScreen.main.bounds)
            self.window?.rootViewController = initialViewController
            self.window?.makeKeyAndVisible()

您不能在
AppDelegate
中使用
present
,因为它是您需要的
UIViewController
实例方法

self.window?.rootViewController = viewC 
//


iPhoneX的高度=2436???iPhoneX的像素高度计数。哦,你说得对。
self.window?.rootViewController = viewC 
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    // Override point for customization after application launch.
    if UIScreen.main.bounds.height == 812 {
        //iphone is iphoneX
        let storyboard = UIStoryboard(name: "Main", bundle: nil)
        let viewC = storyboard.instantiateViewController(withIdentifier: "ViewControllerX") as UIViewController
        self.window?.rootViewController = viewC
     }
     else {

     }

     return true
 }