gpt4 book ai didi

ios - 如果应用程序从移动设置或后台打开,则更新屏幕上的数据

转载 作者:行者123 更新时间:2023-12-05 03:37:13 24 4
gpt4 key购买 nike

我正在尝试在从设置或主页重新打开后更新我的应用程序设置屏幕让我详细解释我想做什么。在我的应用程序设置屏幕中,我必须检查通知是为我的应用程序启用还是禁用,然后我需要显示状态切换按钮。如果通知被禁用,那么在开关切换应用程序时将移动到移动设置,然后用户可以更改/更新通知状态。现在我的问题是如果用户通过按手机屏幕左上角的应用名称或按主页按钮重新打开应用,然后再次打开应用,我需要更新我的切换按钮状态而不返回并重新加载设置屏幕。

最佳答案

以下解决方案可能对您有所帮助。您可以在应用激活时使用本地通知来执行此操作。

你要做的就是跟随首先你需要在你的设置 View Controller 中添加观察者

class SettingsViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()

//add Local notification in your controller
NotificationCenter.default.addObserver(self, selector: #selector(updateSettings(notification:)), name: NSNotification.Name(rawValue: "settings"), object: nil)
// Do any additional setup after loading the view.
}
@objc func updateSettings(notification: NSNotification) {

// here you can check your changes like notifications are enabled or not and update your switch button status
}
}

然后在您的 SceneDelegate 中,您必须发布您在设置屏幕中添加的通知

func sceneDidBecomeActive(_ scene: UIScene) {
NotificationCenter.default.post(name: Notification.Name(rawValue:"settings"), object: nil, userInfo:nil)
// Called when the scene has moved from an inactive state to an active state.
// Use this method to restart any tasks that were paused (or not yet started) when the scene was inactive.
}

希望这可以帮助你好运👍🏻

关于ios - 如果应用程序从移动设置或后台打开,则更新屏幕上的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69391745/

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