码迷,mamicode.com
首页 > 其他好文 > 详细

UI第八讲.UINavigationController、界?面通信

时间:2015-09-16 21:30:50      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:

一、UINavigationController
    1>. UINavigationController:导航控制器,是iOS中最常用的多视图控制器之一,它用来管理多个视图控制器。
    导航控制器可以认为是管理控制器的控制器,主要管理有层级关系的控制器。
     2>.创建
      UINavigationController继承于UIViewController,以栈的方式管理所控制的视图控制器,至少要有一个被管理的视图控制器,这个控制器我们称作,导航控制器的根视图控制器任何继承自UIViewController的类(多态)都可以作为根控制器。
     3>.工作原理
     UINavigationController通过的方式管理控制器的切换,控制入栈和出栈来展示各个视图控制器UINavigationControllerContentView里始终显示栈顶控制器的view

     viewControllers属性存储了栈中的所有被管理的控制器

     navigationController属性,父类中的属性,每个在栈中的控制器,都能通过此属性,获取自己所在的UINavigationController对象

技术分享

 

技术分享

 

二、定制UINavigationBar(导航栏)

    1>. barTintColor //设置导航条的颜色
        setBackgroundImage:forBarMetrics: //导航条加背景图?片
      title   //标题
      titleView   //标题视图
      leftBarButtonItem   //左按钮
      rightBarButtonItem   //右按钮

 

   2>.UIBarButtonItem属于MVCM。定义了UINavigationItem上按钮的触发事件,外观等

    -initWithBarButtonSystemItem:target:action:

    -initWithTitle:style:target:action:

    -initWithImage:style:target:action: tintColor

 

 

示例代码:

UINavigationController的基本属性及设置,对于返回上一级和进入下一级方法的运用

 

Appdelegate.m中,设置window,同时设置UINavigationController

 

技术分享

 

在viewcontroller.m中,对于UINavigationController进本属性进行设置,同时运用push/pop方法

 

技术分享

 

技术分享

 

//注意这里的懒加载方法

技术分享

 

 

在secondViewController.m中主要是设置按钮和利用按钮进行视图的切换

 

技术分享

 

在threeViewController.m中主要是设置按钮和利用按钮进行视图的切换

 

技术分享

 

 

 

三.界面通信

 

 (1).属性传值方法

例子:利用传值,在第一个视图推出到第二个视图时,在第一个视图中为第二个视图控制器的title赋值

 步骤:1>.先要在第二个视图控制器的.h文件中设置属性,同时在第二个视图控制器的.m中接受这个属性地变量值.

      2.在第一个视图控制器的.m中,把第二个视图控制器引入到第一个当中,并给第二个视图控制器的属性赋值.

     

引入secondViewController.h到第一个视图控制器中

 技术分享

 

在secondViewController.h中,设置属性

技术分享

 

在secondViewController.m中,用title接收属性的变量值

技术分享

 

未完,待续

 

 

 

 

 

 

 

 

 

 

 

 

 

UI第八讲.UINavigationController、界?面通信

标签:

原文地址:http://www.cnblogs.com/erdeng/p/4814359.html

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