##DAY7 UINavigationController

#pragma mark ———————UINavigationController———————————

概括:

导航视图控制器也是一个视图控制器,TA管理了多个视图控制器,是系统提供给我们的容器视图控制器

导航视图控制器至少管理一个子视图控制器,这个视图控制器称为导航视图控制器的根视图控制器

如果我们的程序想要采用导航视图控制器进行布局,我们需要指定window的根视图控制器为导航视图控制器

初始化:

initWithRootViewController:

#pragma mark ———————navigationItem———————————

每一个加到导航视图控制器内部的视图控制器自带一个属性叫navigationItem

TA可以配置当前页面导航条的显示内容,比如左、右按钮,标题等。

navigationItem属性的子属性:

title

leftBarButtonItem

leftBarButtonItems

titleView

#pragma mark ———————UIBarButtonItem———————————

创建UIBarButtonItem类,设置为navigationItem的leftBarButtonItem(s)或rightBarButtonItem(s):

initWithTitle:style:target:action: 显示标题

initWithBarButtonSystemItem:target:action: 使用系统自带的图标样式

initWithImage:style:target:action: 使用自定义图标样式

注意:这里的图片会受UIBarButtonItem的影响,要添加图片原生渲染

initWithCustomView: 使用自定义视图

#pragma mark ———————navigationController———————————

navigationController属性的子属性:

viewControllers

navigationBarHidden 设置导航栏的隐藏属性,不使用导航条,但是使用导航条的递进关系等

navigationBar

navigationController属性的方法:

pushViewController:animated: 执行入栈操作,引用计数+1 second覆盖到root上面

popToViewController:animated: 创建一个新的视图控制器是不合适的,导航视图控制器是栈,root还是存在于最下面的

navigationController的模态的过渡风格属性:

modalTransitionStyle

navigationController的模态的方法:

presentViewController:animated:completion:

dismissViewControllerAnimated:completion:

#pragma mark ———————navigationBar———————————

navigationBar属性的子属性:

barStyle 设置导航栏样式

backgroundColor 设置导航条的背景颜色

barTintColor 设置导航栏颜色

tintColor 设置导航栏元素颜色

translucent 设置导航栏的默认效果,默认YES,如果为YES,屏幕左上角为坐标原点;

如果为NO,导航栏上的子视图的坐标原点为 导航栏左下角

##DAY7 UINavigationController的更多相关文章

  1. iOS UINavigationController(内容根据iOS编程编写)

    我们知道 UITabBarController 对象,可以通过使用该对象,用户可以切换不同的屏幕.当要切换的各个屏幕之间没有相互依存关系的时候,该对象可以很好的完成任务.但是当多个屏幕互有关系的时候, ...

  2. UINavigationController

    知识点: 1)UINavigationController 2)UINavigationBar 3)UINavigationItem 4)UIToolBar ===================== ...

  3. 混合使用UITabBarController和UINavigationController

    混合使用这两个控件的好处是我们可以在NavigationBar添加更多的东西,如标题,按钮等.让用户能够获得更多的信息. UITabBarController的属性ViewControllers接受以 ...

  4. 基本组件的使用——UINavigationController

    作用:在多个ViewController中切换.UINavigationController内部以栈的形式维护一组ViewController, 因此,当导航进入一个新视图的时候,会以push的形式将 ...

  5. 解决UINavigationController在pushViewController时出现的"卡顿"问题

    进行开发中,遇到了个小问题: 在使用UINavigationController的-pushViewController:animated:执行入栈一个子控制器操作时(即最新栈顶子控制器),会出现推出 ...

  6. day7

    本节作业: 选课系统 角色:学校.学员.课程.讲师要求:1. 创建北京.上海 2 所学校2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. ...

  7. Python之路,Day7 - Python基础7 面向对象

    本节内容:   面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法.     引子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战> ...

  8. Python Day7

    概述 面向对象高级语法部分 静态方法.类方法.属性方法 类的特殊方法 反射 静态方法 通过@staticmethod装饰器即可把其装饰的方法变为一个静态方法,什么是静态方法呢?其实不难理解,普通的方法 ...

  9. UINavigationController导航控制器初始化 导航控制器栈的push和pop跳转理解

    (1)导航控制器初始化的时候一般都有一个根视图控制器,导航控制器相当于一个栈,里面装的是视图控制器,最先进去的在最下面,最后进去的在最上面.在最上面的那个视图控制器的视图就是这个导航控制器对外展示的界 ...

随机推荐

  1. COB (Chip On Board) 製程介紹/簡介/注意事項 I

    COB (Chip On Board)在電子製造業並不是一項新鮮的技術,但最近我卻常常被問到相關的問題及資料索取.也許真的是產品越來越小了,而較進階的技術又太貴,所以又有人回過頭來考慮COB的製程. ...

  2. 对Msn协议的一点点研究

    这个也是好奇msn的协议还是2011年的时候写的, 就在网上找啊找啊, 可惜要不是不能用就是C++代码还有就是不完整, 到最后我也没弄成功,只到了下面这步就挂掉了...... 登录成功<=SBS ...

  3. poj2163

    #include <stdio.h> #include <stdlib.h> int main() { ; ]; scanf("%d %d %d",& ...

  4. Python的迭代器(iterator)和生成器(constructor)

    一.迭代器(iterator) 1.迭代器的概述 在Python中,for循环可以用于Python中的任何类型,包括列表.元祖等等,实际上,for循环可用于任何“可迭代对象”,这其实就是迭代器 迭代器 ...

  5. oracle超过最大游标数异常分析(转贴)

    问题描述 Oracle 使用 OPEN_CURSORS 参数指定一个会话一次最多可以打开的游标的数量.超过此数量时,Oracle 将报告 ORA-01000 错误.当此错误传播到 WebLogic S ...

  6. CString 与 std::string 相互转化

    MFC中CString 与 std::string 相互转化 CString实际是CStringT, 也就是模板类, 在UNICODE环境下,实际是CStringW, 在多字符集环境下,实际是CStr ...

  7. appium locator

    If you want to find out more about the UIAutomator library, then it might be helpful to check out ht ...

  8. spm3 基本

    spm3 命令 spm init //初始化一个spm模块,会生成基本配置以及测试文件等(下图). //注 初始化以后一般需要 鲜执行一下 spm install 安装默认依赖模块 index.js就 ...

  9. css3动画工具

    去年,我刚刚开始学习css3时候,看到了腾讯的这个工具,引起了我对css3的兴趣. 配合着书本上的知识写了一些效果,感觉不错. http://www.f2e.name/case/css3/tools. ...

  10. VS2012 TFS切换账号登录

    最近要做团队项目,用到的vs2012的tfs代码管理器(win7 +vs2012),切换账号的流程如下: 1.打开控制面板,进入用户账户 2.点击左侧的管理您的凭据,看到自己的TFS服务器的地址,然后 ...