码迷,mamicode.com
首页 > 移动开发 > 详细

iOS-UINavigationController

时间:2016-04-15 15:22:32      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

看了教学视频也还是被导航控制器弄晕了。

于是果断去看官方文档。

自定义的问题:

The Left Item

navigation栈里除了根控制器的所有控制器左边都会有一个leftBarButtonItem来返回上一个控制器。

  • 如果栈顶控制器的leftBarButtonItem被自定义了,它会被展示出来
  • 如果栈顶控制器的leftBarButtonItem没有被自定义,但是它的前一个控制器的backBarButtonItem是有对象的,那么当前控制器会展示那个item
  • 如果没有任何一个控制器有自定义,那么默认有个back按钮,并且back按钮的title是前一个控制器的title(中间的那个title)如果navigation栈中只有一个viewcontroller,不会有back按钮。

注意:有时back按钮的title可能会很长,无法适应提供的空间,navigation bar会用“Back”代替那个返回title,但是仅当当前back按钮由上一个控制器的backBarButtonItem提供时(也就是上面的第二条那样);如果当前控制器是自定义的leftBarButton,则不会用“Back”代替。

 

The Middle Item

  • 如果有自定义则显示自定义,自定义用navigationItem的titleView属性
  • 如果没有自定义,navigation bar展示一个默认title,这个属性一般来自于控制器本身的title属性的值,如果不想用这个,可以设定控制器的navigationItem属性的title属性

 

The Right Item

  • 通过控制器的navigationItem的rightBarButtonItem属性可以进行自定义
  • 如果没有任何自定义,默认没有任何东西展示

 

配置navigation stack中的控制器间的segue,标准的show Detail与show效果如下:

  • show Segue:navigationController 对 viewcontroller进行压栈
  • show Detail Segue:present it modally
  • 别的segue的行为不变

 

对backBarButtonItem和leftBarButtonItem的理解

 

iOS-UINavigationController

标签:

原文地址:http://www.cnblogs.com/rootandshaw/p/5395473.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!