文档章节

控制器管理

天边那束阳光
 天边那束阳光
发布于 2014/10/11 20:47
字数 474
阅读 18
收藏 0

「深度学习福利」大神带你进阶工程师,立即查看>>>

如何创建一个控制器

1.通过storyboard创建

XViewController *Xview = [[XViewController alloc] init];

2.指定xib文件创建

XViewController *Xview = [[XViewController alloc] initWithNibName:@"XViewController" bundle:nil];

控制器中view的创建

1.view的创建过程

if(loadView) 根据loadView代码实现创建
else if(storyboard) 根据storyboard描述创建
else if(nibName) 根据nibName对应的xib的描述创建
else if(控制器名-Controller.xib) 根据此xib描述创建
else if(控制器名.xib) 根据此xib描述创建
else 创建一个空得view

2.控制器view的延迟加载

    用到得时候才会加载

    可以用isViewLoaded方法判断一个UIViewController的view是否已经被加载

    控制器的view加载完毕就会调用viewDidLoad方法

多控制器UINavigationController的简单使用

•UINavigationController的使用步骤

1.初始化UINavigationController

2.设置UIWindow的rootViewController为UINavigationController

3.根据具体情况,通过push方法添加对应个数的子控制器

UINavigationController的子控制器

•UINavigationController以栈的形式保存子控制器

@property(nonatomic,copy) NSArray *viewControllers;

@property(nonatomic,readonly) NSArray *childViewControllers;

•使用push方法能将某个控制器压入栈

- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated;

•使用pop方法可以移除控制器 Ø将栈顶的控制器移除

- (UIViewController *)popViewControllerAnimated:(BOOL)animated;

回到指定的子控制器

- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated;

回到根控制器(栈底控制器)

- (NSArray *)popToRootViewControllerAnimated:(BOOL)animated;

修改导航栏内容

•导航栏的内容由栈顶控制器的navigationItem属性决定
•UINavigationItem有以下属性影响着导航栏的内容
左上角的返回按钮

@property(nonatomic,retain) UIBarButtonItem *backBarButtonItem;

中间的标题视图

@property(nonatomic,retain) UIView          *titleView;

中间的标题文字

@property(nonatomic,copy)   NSString        *title;

左上角的视图

@property(nonatomic,retain) UIBarButtonItem *leftBarButtonItem;

右上角的视图

@property(nonatomic,retain) UIBarButtonItem *rightBarButtonItem;


天边那束阳光
粉丝 1
博文 10
码字总数 4787
作品 0
郑州
私信 提问
加载中
请先登录后再评论。
beego API开发以及自动化文档

beego API开发以及自动化文档 beego1.3版本已经在上个星期发布了,但是还是有很多人不了解如何来进行开发,也是在一步一步的测试中开发,期间QQ群里面很多人都问我如何开发,我的业余时间实在...

astaxie
2014/06/25
2.7W
22
DNS 管理系统--NamedManager

NamedManager 是一个基于 Web 的 DNS 管理系统,可用来添加、调整和删除 DNS 的 zones/records 数据,支持 Bind 作为后端的 DNS 服务,支持 IPv4 和 IPv6。...

匿名
2013/01/23
8.9K
0
工作流管理系统--Pegasus WMS

Pegasus (飞马座)工作流管理系统包括一套技术标准工作流程应用程序中执行帮助许多不同的环境中,包括桌面、校园集群、网格、云。它弥补了科学领域和执行环境通过自 动映射到分布式资源的高层工...

匿名
2013/02/24
5.5K
0
Share This

这是一个 iOS 上的分享工具,可轻松在项目中嵌入使用。每个分享的选项可独立调用。在 iOS 5 上使用 ActionSheet 显示,而 iOS 6 上使用全新的 Activity 视图控制器来显示。 iOS 6+: iOS 5:...

匿名
2013/03/03
1.9K
0
MBPullDownController

MBPullDownController 是 iOS 的一个容器视图控制,用来实现可拖拉的滚动视图接口。 MBPullDownController 允许两个视图控制器,覆盖布局,上面的一个视图可接受拖拉操作来显示后面的视图。...

匿名
2013/03/08
574
0

没有更多内容

加载失败,请刷新页面

加载更多

Hacker News 简讯 2020-08-15

最后更新时间: 2020-08-15 03:01 Welders set off Beirut blast while securing explosives - (maritime-executive.com) 焊工在固定炸药的同时引爆了贝鲁特爆炸 得分:144 | 评论:132 Factor......

FalconChen
今天
24
0
OSChina 周六乱弹 —— 老椅小猫秋乡梦 梦里石台堆小鱼

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @小小编辑 :《MOM》- 蜡笔小心 《MOM》- 蜡笔小心 手机党少年们想听歌,请使劲儿戳(这里) @狄工 :腾讯又在裁员了,35岁以上清退,抖音看到...

小小编辑
今天
61
1
构建高性能队列,你不得不知道的底层知识!

前言 本文收录于专辑:http://dwz.win/HjK,点击解锁更多数据结构与算法的知识。 你好,我是彤哥。 上一节,我们一起学习了如何将递归改写为非递归,其中,用到的数据结构主要是栈。 栈和队列...

彤哥读源码
今天
17
0
Anaconda下安装keras和tensorflow

Anaconda下安装keras和tensorflow 一、下载并安装Anaconda: Anaconda下载 安装步骤: 如果是多用户操作系统选择All Users,单用户选择Just Me 选择合适的安装路径 然后勾选这个,自动配置环境...

Atlantis-Brook
今天
15
0
滴滴ElasticSearch千万级TPS写入性能翻倍技术剖析

桔妹导读:滴滴ElasticSearch平台承接了公司内部所有使用ElasticSearch的业务,包括核心搜索、RDS从库、日志检索、安全数据分析、指标数据分析等等。平台规模达到了3000+节点,5PB 的数据存储...

滴滴技术
今天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部