iOS 在视图控制器里面判断 应用程序的前台 后台切换 UIViewController
1.时机 用户点击home 键 应用退到后台 再次点击进入前台 在UIViewController里面 控制器如何获取相关的事件?
2.需求
(1)NSTimer 在应用程序进入后台 10秒至10分钟会停止(10分钟左右一般应用也会被kill) 但是只要在后台这个nstimer 运行 就是邋遢的 所以我想停止它 在应用进入后台的时候
(2)程序支持后台下载,当用户停止在下载管理界面时,然后用户点击home键使程序进入后台运行,等用户返回到程序时,下载管理界面需要显示最新的下载进度。(需要长时间处理 需要开启后台服务,这里 我们只讲UIViewController 里的两个事件)
3.实现
这里使用通知实现(这两个方法 是监控全局的 所以 要执行方法 还要判断是不是在当前的视图控制器中,判断方法在接下来的随笔中实现)
//增加监听
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(appHasGoneInForeground:)
name:UIApplicationWillEnterForegroundNotification
object:nil];
//别忘了删除监听
[[NSNotificationCenter defaultCenter] removeObserver:self];
UIApplicationDidEnterBackgroundNotification //进入后台
UIApplicationWillEnterForegroundNotification //回到程序
很方便是不是 ,之前我还傻乎乎的在AppDelegate里面 判断好多条件去刷页面,现在想来,那会我真是个屌丝,哈哈
iOS 在视图控制器里面判断 应用程序的前台 后台切换 UIViewController的更多相关文章
- Linux的bg和fg命令 ---让程序在前台后台之间切换
Linux的bg和fg命令 我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务.而不能让程序在前台后台之间切换.而 Linux 提供了 fg 和 bg 命 ...
- 【IOS开发—视图控制器】
一.UIViewController 视图控制器是UIViewController类或者其子类对象,每个视图控制器都负责管理一个视图层次结构.在UIViewController中有一个重要的UIVie ...
- iOS UI-(多)视图控制器的生命周期、加载方法和模态视图方法以及屌丝方法
#import "ViewController.h" #import "SecondViewController.h" @interface ViewContr ...
- ios 导航视图控制器 跳转
import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoa ...
- 玩转iOS开发 - 视图控制器生命周期
视图控制器生命周期
- Linux程序前台后台切换
1.在Linux终端运行命令的时候,在命令末尾加上 & 符号,就可以让程序在后台运行 root@Ubuntu$ ./tcpserv01 & 2.如果程序正在前台运行,可以使用 Ctrl ...
- UITabBarController ---- 标签视图控制器
直接上代码: // // AppDelegate.m // // #import "AppDelegate.h" #import "RootViewController. ...
- Swift - 判断设备类型开发兼容的iOS应用(iPad使用分隔视图控制器)
1,分割视图控制器(UISplitViewController) 在iPhone应用中,使用导航控制器由上一层界面进入下一层界面. 但iPad屏幕较大,通常使用SplitViewController来 ...
- iOS开发 ~应用程序设计理念:视图控制器(UIViewController)、视图(UIView)
应用程序设计理念:视图控制器(UIViewController).视图(UIView) 利用视图控制器(底层)管理视图(外观),一对一 1.视图的作用:负责显示的外观 2.视图控制器的作用:创建界面. ...
随机推荐
- kettle入门(七) 之kettle增量方案(一)全量比对取增量-依据唯一标示
引: ods有个project表来自于上游系统,数据量不大 十几万,下游系统须要此数据,而且须要每天提供截止当天的增量数据 要求每条数据给出数据变化时间及标示,即数据若是插入 有插入时间和插入标示 若 ...
- java 实现统计某段文字在内容中出现的次数
http://outofmemory.cn/code-snippet/815/java-zishutongji 一个api,位于apache.commons.lang.StringUtils类下的一个 ...
- 搭建SSH框架整合Struts2和Spring时,使用@Autowired注解无法自动注入
© 版权声明:本文为博主原创文章,转载请注明出处 1.问题描述: 搭建SSH框架,在进行Struts2和Spring整合时,使用Spring的@Autowired自动注入失败,运行报错java.lan ...
- Shell计算器
#!/bin/bash # filename : jisuan.sh # description : add, subtract, multiply, and divide print_usage() ...
- PyQt5 Function Parameter Declaration
addWidget self.lcd = QLCDNumber() grid.addWidget(self.lcd,0,0,3,0) grid.setSpacing(10) void QGridLay ...
- [译]GLUT教程 - 整合代码6
Lighthouse3d.com >> GLUT Tutorial >> Extras >> The Code So Far VI 下面代码以窗体模式启动.你可以在 ...
- [译]GLUT教程 - 移动镜头2
Lighthouse3d.com >> GLUT Tutorial >> Input >> Move the Camera II 本节的最后一个示例是回顾.现在我们 ...
- spring-test-dbunit的配置和使用
1.数据源配置 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" ...
- mysql 5.7 迁移数据方案
从一台服务器迁移至其他服务器,如何选择最短的停服时间方案 方案一.凌晨3点的全备份+停服后一天的大概一天的增备 1. 拷贝前一天的全备份至新的服务器 rsync -auzrP /Data/dbbak/ ...
- linux 面试题
[题目]一个数组,输出重复次数最多的前你n位,倒序输出 [答案] catwords.txt | sort | uniq -c | sort -k1,1nr | head -n [解析] sor ...