问题描述
- ios 如何实现前后台切换自动刷新的功能
- 如题 现在要达到的目的
我有两个页面 3个controller 一个页面1 一个页面2 一个是他们的父类
目的:
1、切换到后台 在切换到前台时 自动刷新一次(刷新函数已经写好没问题,函数名是autoRefreshing)
2、比如是页面1在前台切换到后台后,再回到前台,只能页面1刷新,不能是点击进入页面2也刷新一次(我的问题就是 两个都要自动刷新)
我用的方法:在父类中
//把self添加到NSNotificationCenter的观察者中
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(autoRefreshing) name:UIApplicationDidBecomeActiveNotification object:nil];加了这句,确实会两个页面都会自动刷新 那有什么办法达到我上面说的两个目的 求解答
解决方案
解决方案二:
这很简单,在appdelegate里becomeactivi这个方法里发送通知即可
解决方案三:
按照你的思路 可以在你要在程序进入后台之前(或者你直接在 这三个页面上存一个状态:比如父视图为0,1页面为1,二页面为2), appdelegate 里的 进入前后台的方法里发送不同通知(那个页面刷新的通知), 并判断存的状态是哪个页面 ,这样就能选择发送不同的通知。
解决方案四:
按照你的思路 可以在你要在程序进入后台之前(或者你直接在 这三个页面上存一个状态:比如父视图为0,1页面为1,二页面为2), appdelegate 里的 进入前后台的方法里发送不同通知(那个页面刷新的通知), 并判断存的状态是哪个页面 ,这样就能选择发送不同的通知。
解决方案五:
监听UIApplicationWillEnterForegroundNotification, UIApplicationDidEnterBackgroundNotification ,响应对应的selector处理业务