[Swift Tip] 如何获知App进入前台并执行相应操作

假设App进入后台,停止Download数据,那如何在App重新进入前台时,继续执行Download的操作呢?
首先我们要在相应的Controller设置一个监听者,负责监听App进入前台时发出的消息--UIApplication.willEnterForegroundNotification,当监听到响应的消息时,调用我们想要继续执行的操作。

override func viewDidLoad() {
        super.viewDidLoad()

         // Add an observer for app will enter foreground
        NotificationCenter.default.addObserver(self, selector: #selector(appWillEnterForeground(notification:)), name: UIApplication.willEnterForegroundNotification, object: nil)

    }

记得Controller的生命周期结束时,要释放监听者

override func viewWillDisappear(_ animated: Bool) {
        super.viewWillDisappear(animated)
        
        // Remove notification observer
        NotificationCenter.default.removeObserver(self)
    }
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,904评论 1 32
  • 1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现cl...
    以德扶人阅读 7,618评论 2 50
  • 8月6日。暴雨夹杂冰雹如海倾注。白色飞烟,苍茫如幕。 上午还晴朗的天,下午忽然翻脸。从4号开始,这种天气一直持续。...
    水璇阅读 1,652评论 0 1
  • 我们这伙人原本都没见过照照,就老是听孙言提起她来。简直阴魂不散。孙言这人说话喜欢夸张,闭着眼睛都能把煎饼说成月亮。...
    怪物不二阅读 3,362评论 0 3
  • 遇见的问题 先放遇见的问题——今天安装一台电脑上的virtualenv的时候,因为是常用命令,需要设置快捷方式 换...
    小龙虾0o0阅读 1,477评论 0 0

友情链接更多精彩内容