gpt4 book ai didi

ios - 如何以编程方式为特定 View Controller 禁用/启用 sleep 模式?

转载 作者:搜寻专家 更新时间:2023-10-31 22:02:58 25 4
gpt4 key购买 nike

我正在构建一个应用程序,我想在一个特定的 viewController 上禁用 sleep 模式。

我有 3 个问题:

  1. 我在特定 View Controller 的 viewDidLoad 方法中使用此代码:

    UIApplication.sharedApplication().idleTimerDisabled = true

    阅读之前关于此的问题,我确信这是正确的代码。但这是代码中的正确“位置”吗?

  2. 我应该在其他 View Controller 上使用以下代码吗(或者这不是必需的,没有它会默认吗?):

    UIApplication.sharedApplication().idleTimerDisabled = false

  3. 在模拟器中,我使用 Hardware -> Lock 来模拟锁屏。你认为这将永远只是锁定屏幕吗?或者如果我的代码正确,它不会在特定的 View Controller 上锁定( sleep 模式)我的应用程序吗? (现在它只是将其锁定在模拟器中)。如何模拟用户空闲时间?

最佳答案

您需要在 viewDidLoad 中禁用 idleTimer

UIApplication.shared.isIdleTimerDisabled = true

当您的 ViewController 消失时,您需要重新启用 idleTimer,因此将其放入 viewDidDisappear

UIApplication.shared.isIdleTimerDisabled = false

您通过按下电源按钮按钮手动锁定屏幕,这是您从模拟器手动锁定屏幕时发生的情况。当您这样做时,您的 View 会消失,因此应该禁用 idleTimer。您可以通过在 viewDidDisappear 中放置打印语句来测试情况是否如此。

在 iOS 中设置 idleTimer 的方法是转到 Settings->General->Auto-Lock 并指定屏幕锁定前应该耗时长度。最短间隔为 1 分钟。如果您不理会它并且不按电源按钮,则应该禁用 idleTimer。

关于ios - 如何以编程方式为特定 View Controller 禁用/启用 sleep 模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32454911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com