【问题标题】:I Want to add a view Controller on another View Controller for 5 Second?我想在另一个视图控制器上添加一个视图控制器 5 秒?
【发布时间】:2016-07-12 05:17:09
【问题描述】:

我想在另一个 View Controller 上添加一个 View Controller 5 秒?

可以帮助我,因为我是 Swift 编程的新手。

提前致谢。

【问题讨论】:

  • 如何创建一个 XIB 并将其呈现在视图上?

标签: swift swift2


【解决方案1】:

你应该用这个让屏幕在 5s 后消失:

let time = dispatch_time(dispatch_time_t(DISPATCH_TIME_NOW), 5 * Int64(NSEC_PER_SEC))
dispatch_after(time, dispatch_get_main_queue()) {
    //put your code to remove the screen
}

【讨论】:

    【解决方案2】:

    调用另一个视图控制器,然后在第二个视图控制器上在 viewDidAppear 函数上添加 5 秒睡眠,然后再次调用第一个视图控制器。

    override func viewDidAppear(animated: Bool) 
    {
        print("Inside View Did Appear")
        sleep(5)
    
        print("After 5 second")
    
        let initialViewController = self.storyboard!.instantiateViewControllerWithIdentifier("RevealViewController")
        let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
        appDelegate.window?.rootViewController = initialViewController
        appDelegate.window?.makeKeyAndVisible()
     }
    

    【讨论】:

      【解决方案3】:

      有太多的方法可以做到。我的建议是使用故事板。如果子视图控制器只是父控制器的一小部分,你最好在故事板中使用容器视图控制器。如果要像覆盖一样使用它,使用 segue 连接两个控制器“Present Modally”类型。如果您搜索容器视图控制器或 segue 连接,您可以在 google 中找到示例。

      如果您选择 segue 方式来关闭子控制器,您可以在 didViewAppear 方法内的第二个控制器中安排 self.dismissViewControllerAnimated(false, completion: nil) 代码。对于容器视图情况,您可以在 firstview 控制器中编写关闭代码并从中删除容器超级视图。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-06
        • 2017-09-17
        相关资源
        最近更新 更多