定义 UIView 的子类, 因为我们想让 UIView 相应触摸事件, 需要让他的.m 文件中实现几个方法, UIView 不能在其 .m 问价中实现这几个方法, 因此需要定义 UIView 的子类,
让一个视图对触摸事件作出响应, 需要实现的方法
//手指刚接触到的时候出发(手指方触碰视图)
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
当手指咋视图内移动的时候出发(前提: 手指还没离开视图)
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
当手指离开视图的时候出发, 即触摸结束
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
当触摸取消是触发, (触发被意外中断, 比如有电话接入)
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
NSTimer:
_timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(changeColor) userInfo:nil repeats:YES];
TimeInterval 时间间隔 ; target 目标 ; selector target 要执行 selector 方法 ; userInfo 用户信息 ; repeats 是否反复定时执行
视图控制器: RootUIViewController 他不是视图, 用来管理视图, 所以屏幕上看不到哦, 但是自身携带一个根视图
-(void)loadView 方法
该方法是在 loadview 执行完时候, 立即执行的方法,当访问试图控制器的 view 时, 一旦发现view 为空, 立即调用loadview 来加载根视图,如果哟啊自定义视图控制器, 只需要重写loadview 方法, 在loadview 中完成创建, 并指定为当前视图控制器的根视图
// 应用程序将要 取消活跃状态时触发
// 使用该方法暂停 正在执行的任务, 扔定时器失效, 暂停游戏
- (void)applicationWillResignActive:(UIApplication *)application
// 应用程序已经进入后台触发, 释放共享的资源, 保存用户数据, 让 timer 无效, 当前程序退出时, 会替代applicationWillTerminate 方法
- (void)applicationDidEnterBackground:(UIApplication *)application
// 应用程序将要进入前台时触发, 游戏继续运行
- (void)applicationWillEnterForeground:(UIApplication *)application
// 当应用程序成为 活跃状态是触发
// 重新启动当前应用程序, 进入不活跃状态是暂停的任务, 如果之前程序在后台, 此时可以选择刷新界面;
- (void)applicationDidBecomeActive:(UIApplication *)application