1210笔记//关于导航实例-QQ空间//导航实例-storyboard实现//控制器的生命周期//控制器的生命周期方法
一、利用storyboard完成导航
1.storyboard中用来跳转的每一根线 都是 一个 UIStoryboardSegue对象
1> 自动跳转 (从 某个按钮 拖线到 下一个目的控制器)
2> 手动跳转 (从 来源控制器 拖线到 下一个目的控制器)
* 一定要给segue绑定一个唯一的identifier
* 如何跳转?通过来源控制器的一个方法来执行这个UIStoryboardSegue对象
[self performSegueWithIdentifier:@"login2home" sender:nil];
2.UIStoryboardSegue对象
// 唯一标识
@property (nonatomic, readonly) NSString *identifier;
// 来源控制器
@property (nonatomic, readonly) id sourceViewController;
// 目的控制器
@property (nonatomic, readonly) id destinationViewController;
3.通过UIStoryboardSegue对象完成的跳转过程
1> 初始化(创建)UIStoryboardSegue对象
2> 设置UIStoryboardSegue对象的identifier标识 和 sourceViewController来源控制器
3> 创建目的控制器,并且设置为UIStoryboardSegue对象的destinationViewController属性
4> 在跳转之前,会调用一次sourceViewController的下面方法
// 后面的sender参数就是当初调用performSegueWithIdentifier:sender:方法传入的参数
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
5> 执行UIStoryboardSegue对象
[segue perform];
6> 会将destinationViewController目的控制器压入栈中
二、显示本地网页
// 1.获得about.html文件的URL
NSURL *url = [[NSBundle mainBundle] URLForResource:@"about.html" withExtension:nil];
// 2.封装一个请求对象
NSURLRequest *request = [NSURLRequest requestWithURL:url];
// 3.加载请求
[webView loadRequest:request];
三、内存警告的处理过程
1.当控制器接收到内存警告时,会调用 didReceiveMemoryWarning 方法
2.didReceiveMemoryWarning方法内部的默认实现
1> 首先会检测控制器的view在不在屏幕上
if (self.view.superview == nil) { // 检测控制器的view在不在屏幕上
// 就会尝试销毁控制器的view
// 即将销毁的时候,就会调用控制器的 viewWillUnload
// 销毁完毕的时候,就会调用控制器的 viewDidUnload方法
} else {
// 不销毁控制器的view
}
3.当需要再次使用控制器的view时,又会调用loadView方法来创建view
4.接着会调用一系列的生命周期方法
viewDidLoad ---> ......
5.生命周期循环
loadView --> viewDidLoad --> ..可见.. --内存警告--> didReceiveMemoryWarning ---> viewWillUnload --> viewDidUnload ---再次使用---> loadView
四、UITabBarController
1.以选项卡的形式展示多个子控制器
2.设置需要显示的子控制器
1> 设置子控制器数组
NSArray *viewControllers;
2> 逐个添加子控制器
// 通过这个方法添加的子控制器会自动添加到viewControllers数组中
- (void)addChildViewController:(UIViewController *)childController;
3.设置子控制器对应标签的文字和图片
* 通过子控制器的tabBarItem属性设置
vc.tabBarItem.title = @"最近"; // 设置标题
vc.tabBarItem.image = [UIImage imageNamed:@"tab_recent_press.png"]; // 设置图标
1210笔记//关于导航实例-QQ空间//导航实例-storyboard实现//控制器的生命周期//控制器的生命周期方法的更多相关文章
- 01-导航实例-QQ空间Demo示例程序源代码
01-导航实例-QQ空间.zip62.4 KB // MJLoginViewController.h Map // // MJLoginViewController.h // 01-导航实例-QQ ...
- 拒绝QQ空间-手把手教你美化博客
为什么要美化? 博客园的主题看起来是有一些年代感了,应该是不符合当代大学生的审美了,起码我就觉得不行,所以我们要进行一些美化,但是搞技术的人的博客不应该搞得花里胡哨,最好是简洁一些(个人想法),网上有 ...
- 参数化登录QQ空间实例
通过参数化的方式,登录QQ空间 实例源码: # coding:utf-8 from selenium import webdriver import unittest import time clas ...
- Bootstrap历练实例:激活导航状态
激活导航状态 您可以在激活状态的胶囊式导航和列表导航中放置徽章.通过使用 <span class="badge"> 来激活链接,如下面的实例所示: <!DOCTY ...
- WPF MvvmLight简单实例(1) 页面导航
原文:WPF MvvmLight简单实例(1) 页面导航 实现了那些功能,先看看截图: 操作描述: 在程序运行后,点击“Load”按钮,页面会加载PageOne,点击PageOne页面中的“Next” ...
- 【web前端优化之图片模糊到清晰】看我QQ空间如何显示相片
前言 此篇文章估计不会太长,有移除首页的风险,但是老夫(称老夫是因为我们真正的叶小钗其实都100多岁啦)是不会怕滴.所以,我来了哟! 题外话:今天我们一起还看了一道前端的面试题,而后我本来还想多找几道 ...
- 高仿精仿手机版QQ空间应用源码
说明:本次QQ空间更新了以前非常基础的代码 更新内容一 更新了登陆界面二 增加了输入时密码时和登陆成功后播放音频的效果三 增加了导航条渐隐的效果(和真实QQ空间的导航条一样,首先透明,当tablev ...
- QQ空间如何显示相片
QQ空间如何显示相片 前言 此篇文章估计不会太长,有移除首页的风险,但是老夫(称老夫是因为我们真正的叶小钗其实都100多岁啦)是不会怕滴.所以,我来了哟! 题外话:今天我们一起还看了一道前端的面试题, ...
- GIS案例学习笔记-ArcGIS整图大图出图实例教程
GIS案例学习笔记-ArcGIS整图大图出图实例教程 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 1. 通过出图比例尺(1:2000),地图范围测算图纸大小. 图 ...
随机推荐
- nginx location优先级
目录 1. 配置语法 2. 配置实例 3. 总结: 网上查了下location的优先级规则,但是很多资料都说的模棱两可,自己动手实地配置了下,下面总结如下. 1. 配置语法 1> 精确匹配 lo ...
- 转MySQL详解--索引
写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点.考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录.如果没有索引,查询将 ...
- golang log
自带log模块 写入文件 package main import ( "fmt" "log" "os" ) func main(){ log ...
- React获取数据,假如为数组,使用map出现的问题
在平时做项目的时候,使用到了redux, 如果获取服务器端的数据,例如返回一个 data = [1,2,3,4]data.map(item => item*2) , 这样使用的话如果数据正常获 ...
- Linux系统安装jdk后出现无法执行binary 文件的错误解决
这是由于jdk版本的问题,针对Linux系统,Oracle提供了 ARM 的32jdk和64位jdk , 但是也提供了类似这样jdk-8u191-linux-i586.tar.gz32或64位的jdk ...
- ZooKeeper完全分布式安装与配置
Apache ZooKeeper是一个为分布式应用所设计开源协调服务,其设计目是为了减轻分布式应用程序所承担的协调任务.可以为用户提供同步.配置管理.分组和命名服务. 1.环境说明 在三台装有cent ...
- 使用Scrapy自带的ImagesPipeline下载图片,并对其进行分类。
ImagesPipeline是scrapy自带的类,用来处理图片(爬取时将图片下载到本地)用的. 优势: 将下载图片转换成通用的JPG和RGB格式 避免重复下载 缩略图生成 图片大小过滤 异步下载 . ...
- 福大软工1816:Alpha(1/10)
Alpha 冲刺 (1/10) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务: 文字/口头描述: 1.自己学习wxpy.pyqt ...
- C#中async和await用法
.net 4.5中新增了async和await这一对用于异步编程的关键字. async放在方法中存在await代码的方法中,await放在调用返回Task的方法前. class Class1 { pr ...
- lintcode-91-最小调整代价
91-最小调整代价 给一个整数数组,调整每个数的大小,使得相邻的两个数的差不大于一个给定的整数target,调整每个数的代价为调整前后的差的绝对值,求调整代价之和最小是多少. 注意事项 你可以假设数组 ...