***************************** 使用storyboard导航*********************************

storyboard方式相对简单。

在弹出来的选择框里选择跳转方式:

连接完成:

************************** 使用presentViewController导航 *************************

 // 建立一个继承自UIviewController的类secondViewController后

 secondViewController *second = [self.storyboard instantiateViewControllerWithIdentifier:@"// 写second这个viewController的storyboard属性名称,在右边的编辑器里可以编辑"]

 presentViewController:(UIViewController *) animated:(BOOL) completion:^(void)completion
 // 显示viewController

 // 也可以建立带xib的类,然后用
 initWithNibName:(NSString *) bundle:(NSBundle *)
 如:ThirdViewController *t = [[ThirdViewController alloc]initWithNibName:@"ThirdViewController" bundle:nil]

 // 然后再调用presentViewController方法

***************************** 使用UINavigationController导航 *************************

NavigationController使用栈结构。

NavigationControllerbar:比如新浪微博底部的导航条

看到 NavigationControlleritem :可以想到应该是一些自定义的东西

1. 首先在Supporting Files里的info.plist里将Main storyboard file base name对应的Main清除

2. 建立几个继承自UIViewController的类作为跳转资源

3. 在AppDelegate.m创建UIWindow实例,UIViewController实例,初始化根控制器

// AppDelegate.m

#import <AppDelegate.h>
#import "MyViewController1"
#import "MyViewController2"
#import "MyViewController3"
#import "MyViewController4"

@interface AppDelegate()

@end

@implementation AppDelegate

- (BOOL)applocation:(UIApplication *)application didLaunchingWithOptions:(NSDictionary *)launchOptions{
    UIScreen *screen = [UIScreen mainScreen];   // 得到当前屏幕大小

    self.window = [[UIWindow alloc]initWithFrame:screen.bounds];

    MyViewController1 *vc1 = [[MyViewController alloc]init];

    vc1.view.backgroundColor = [UIColor blueColor]; // 设置背景色

    UINavigationController *nc = [[UINavigation alloc]initWithRootViewController:];   //  实例化NavigationController

    self.window.rootViewController =nc;  // 使窗口根控制器为UINavigationController实例nc

    [self.window makeKeyAndVisible];   // 使窗口可见

    return YES;

@end

Navigation学习笔记的更多相关文章

  1. Learning ROS for Robotics Programming Second Edition学习笔记(十) indigo Gazebo rviz slam navigation

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 moveit是书的最后一章,由于对机械臂完全不知,看不懂 ...

  2. ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM - ROSMapModify - ROS地图修改

    ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM - 2 - MapModify地图修改 We can use gmapping model to genera ...

  3. Ionic2学习笔记(6):Navigation

    作者:Grey 原文地址: http://www.cnblogs.com/greyzeng/p/5551535.html           Ionic2中创建一个页面很方便,在页面之间相互切换也很方 ...

  4. Ionic2学习笔记(7):Input

    作者:Grey 原文地址: http://www.cnblogs.com/greyzeng/p/5554610.html           我们先来看一个简单的输入用户名和密码点击登录的界面:   ...

  5. Ionic2学习笔记(5):Provider

    作者:Grey 原文地址: http://www.cnblogs.com/greyzeng/p/5547646.html             Provider是一种为App提供数据源的方式, 举个 ...

  6. 烤鸭的Source Insight学习笔记

    如果你觉得这网页排版不好看,可以去下载我上传的word版:<烤鸭的Source Insight学习笔记.doc> http://download.csdn.NET/detail/benka ...

  7. javascripts学习笔记(五):用js来实现缩略语列表、文献来源链接和快捷键列表。

    1 缩略语列表问题出发点:一段包含大量缩略语的文本,例如: <p> The <abbr title="World Wide Web Consortium"> ...

  8. [原创]java WEB学习笔记59:Struts2学习之路---OGNL,值栈,读取对象栈中的对象的属性,读取 Context Map 里的对象的属性,调用字段和方法,数组,list,map

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  9. ActionBarSherlock的学习笔记(一) -------------- ActionBarSherlock的简要介绍

    1. 介绍 ActionBarSherlock 是Android compatibility library 的一个扩展, 不知道什么原因 Android 兼容开发包没有包含ActionBar. 所以 ...

随机推荐

  1. JSON.NET概述

    1. JSON.NET概述 当JSON逐渐成为Ajax的标准数据交互格式时,在.NET中处理JSON数据只能使用字符串拼接的方法,十分麻烦,因而催生了JSON.NET这个项目. JSON.NET是一个 ...

  2. node.js在windows下的学习笔记(2)---简单熟悉一些命令

    1.打开如下的安装 2.输入node -v,显示node的版本号 3.输入node --help.显示帮助命令 4.在命令行中输入node,按下回车键,当出现>符号的时候即进入了node的REP ...

  3. JS数组定义

     JS数组定义收藏 function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.create ...

  4. Monitoring and Tuning the Linux Networking Stack: Receiving Data

    http://blog.packagecloud.io/eng/2016/06/22/monitoring-tuning-linux-networking-stack-receiving-data/ ...

  5. Awake和Start

    经过查阅资料和自己的理解整理出来的,欢迎大家指教. Awake和Start对比 awake比start先执行. 当有多个类的时候,所有类的awake执行完了才会执行start. awake里面一般放初 ...

  6. linux shell执行方式

    linux shell执行有两种方式 shell脚本以#!/bin/bash开头,执行shell时先检查首行,在内部以下列方式执行: $/bin/bash script.sh 1. 使用sh执行. $ ...

  7. Android开发之位置定位详解与实例解析(GPS定位、Google网络定位,BaiduLBS(SDK)定位)

    在android开发中地图和定位是很多软件不可或缺的内容,这些特色功能也给人们带来了很多方便.定位一般分为三种发方案:即GPS定位.Google网络定位以及基站定位 最简单的手机定位方式当然是通过GP ...

  8. “DBUtility.DbHelperSQL”的类型初始值设定项引发异常 “DBUtility.DbHelperSQL”的类型初始值设定项引发异常

    今天遇到了一个这样的问题“DBUtility.DbHelperSQL”的类型初始值设定项引发异常“DBUtility.DbHelperSQL”的类型初始值设定项引发异常 也许有和我遇到这问题的人也在这 ...

  9. udp开发-dtd验证,dom解析

    //博主太懒了,并没有提供范例程序 6.基于UDP开发 (1)发送方:socket->准备数据包 DatagramSocket docket = new DatagramSocket(); // ...

  10. 20160406javaweb 之JDBC简单案例

    前几天写的user注册登录注销案例,没有用到数据库,现在做出改动,使用数据库存储信息: 一.首先我们需要建立一个数据库: 如下图: 创建数据库的代码如下: -- 导出 database02 的数据库结 ...