【问题标题】:Present another view immediately after dismissal解雇后立即呈现另一个视图
【发布时间】:2017-05-12 09:04:28
【问题描述】:

在 HomeKit 中,HMHome addAccessory() 似乎提供了自己的控制器。

home.addAccessory(accessory) { error in
    if let error = error {
    else {
       // present another view controller at this point
    }
}

当调用完成处理程序时,一切都应该完成。但此时控制器似乎还没有被解雇。

如果我尝试在完成时立即呈现一个新控制器,则不会发生任何事情。现在我似乎需要等待一段时间才能展示新的控制器,但这似乎无法接受。

我可以做些什么来排队该操作?

如果没有,我想在尝试添加附件之前,我只需要在没有动画的情况下显示下一个视图,然后在添加附件后填写信息。

【问题讨论】:

    标签: swift homekit


    【解决方案1】:

    你在视图控制器中吗?

    如果您在view controller 中快速展示另一个视图控制器,您可以使用present

    所以你可以写:

    present(yourViewController, animated: true, completion: nil)
    

    【讨论】:

    • 是的,我知道如何展示它。在这种情况下的问题,我必须等待大约 3 秒才能呈现它。我不希望用户看到我打算隐藏的视图。
    • 哦我明白了,这是 HomeKit 的错吗?
    • 这与addAccessory() 的调用方式非常奇特有关。因为它本身呈现了一个视图控制器,然后将其关闭。而且我在解雇后立即呈现另一个视图控制器时遇到问题。
    • 我看不出固件与它有什么关系。这是视图和 ViewController 的问题。实际上 HomeKit 可能与它无关。任何呈现 UI 的东西都可能表现出类似的行为。
    猜你喜欢
    • 1970-01-01
    • 2021-08-15
    • 2011-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-05
    • 1970-01-01
    • 2017-09-10
    相关资源
    最近更新 更多