摘要:

Storyboard的使用与原本单个xib文件的使用还是有些不同的,于习惯上会有些出入。在这里记下遇到的要点。

1、将第一个ViewController用设置成NavigationController属性

一般新建一个project时。会自带一个ViewController的类。storyboard中也会有一个现成的视图与其绑定在一起,与以往不同的是,在AppDelegate中已经没有直接将该视图控制器设为根视图的代码了,这时假设想要将这个视图控制器设置成一个NavigationController而且能够push其它子界面的话,採用例如以下的方法:

在storyboard文件里。新拖出一个NavigationController,放在原来视图的左边,松开鼠标后,会出现两个视图,中间以箭头相连接,如今删除掉当中被箭头指向的视图,将箭头指向我们原本的视图,在左側栏能够看到新出来的NacigationControllerScene的根视图(root View Controller)是指向我们的视图的。

然后不要忘了将表示最初界面的箭头指向我们拖出来的NavigationController,这样我们的视图就拥有了NavigationController的属性了。

2、调用与storyboard中视图绑定的控制器

我们在storyboard中新建一个视图,然后和一个Controller关联在一起,这时我们假设要调用显示这个界面。使用传统的方法新建Controller的实例然后展示是不行的。这样仅仅会显示在Controller中代码写了的内容。storyboard中设置的内容所有都不会显示,最明显的就是视图的背景会是一片黑的。应该採用以下的方法:

        // 必须通过storyboard来找到view!

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
NextViewController *nextVC = [storyboard instantiateViewControllerWithIdentifier:@"nextViewController"];
[self.navigationController pushViewController:nextVC animated:YES];

不要忘记在storyboard中的视图属性里要定义视图的Identifier,也就是上面代码找到视图的凭据。

不断更新...

转载请注明出处,谢谢

iOS中Storyboard使用要点记录的更多相关文章

  1. gulp自动添加版本号过程中的一些要点记录

    1.打开node_modules\gulp-rev\index.js 第144行 manifest[originalFile] = revisionedFile; 更新为: manifest[orig ...

  2. JAVA 中LinkedHashMap要点记录

    JAVA 中LinkedHashMap要点记录 构造函数中可能出现的几个参数说明如下: 1.initialCapacity 初始容量大小,使用无参构造方法时,此值默认是16 2.loadFactor ...

  3. iOS 7 中 StoryBoard 总体缩放

    iOS 7 中 StoryBoard 总体缩放 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用 ...

  4. iOS中xib与storyboard原理,与Android界面布局的异同

    用文本标记语言来进行布局,用的最多的应该是HTML语言.HTML能够理解为有一组特殊标记的XML语言. 一.iOS中xib与storyboard显示原理 在iOS中基本的布置界面的方式有3种:代码.x ...

  5. iOS中的事件处理

    前言:iOS中事件处理,是一个非常重要也非常难得地方.涉及到响应者链的地方的面试题,非常多工作两三年的老鸟也未必能回答的非常专业.这里具体介绍一下iOS中的事件处理,以及响应者链. 1. 三大事件 触 ...

  6. Android开发入门要点记录:四大组件

    cocos2dx跨平台开发中需要了解android开发,昨天快速的浏览了一本Android开发入门教程,因为之前也似懂非懂的写过Activity,Intent,XML文件,还有里面许多控件甚至编程思想 ...

  7. iOS中数据库应用基础

    iOS 数据库入门 一.数据库简介 1.什么是数据库? 数据库(Database) 是按照数据结构来组织,存储和管理数据的仓库 数据库可以分为2大种类 关系型数据库(主流) PC端 Oracle My ...

  8. iOS 中的 HotFix 方案总结详解

    相信HotFix大家应该都很熟悉了,今天主要对于最近调研的一些方案做一些总结.iOS中的HotFix方案大致可以分为四种: WaxPatch(Alibaba) Dynamic Framework(Ap ...

  9. iOS:iOS中的多控制器管理

    iOS中的控制器有三种创建方式: 1.通过storyboard创建 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@" ...

随机推荐

  1. OpenERP实施记录(13):出库处理

    本文是<OpenERP实施记录>系列文章的一部分. 在前面的文章中,业务部门接到沃尔玛3台联想Y400N笔记本电脑的订单,ABC公司立即采购了8台(3台送货+5台备库存)回来,完成了入库和 ...

  2. 【IntellJ IDEA】idea上所有代码都报错了

    可能会碰到蓝屏,内存溢出重启idea等特殊情况. 重新打开idea后发现原本的代码全都报错了 正确的解决方法: 方法很简单 执行idea工具栏上下面的菜单: File -> Invalidate ...

  3. 常用的基本控件 android常用控件

    1.TextView:(文本框):不能编辑    android:textColor="@color/tv_show_color" 字体颜色    android:textSize ...

  4. 实验3 OpenGL几何变换

    转自:http://www.cnblogs.com/opengl/archive/2012/10/30/2747130.html 1.实验目的: 理解掌握一个OpenGL程序平移.旋转.缩放变换的方法 ...

  5. [翻译] SoundManager 音频管理器

    SoundManager 音频管理器 https://github.com/nicklockwood/SoundManager Purpose SoundManager is a simple cla ...

  6. Virtualbox虚拟机安装CentOS 6.5图文详细教程

    http://blog.csdn.net/risingsun001/article/details/37934975

  7. iOS:下拉刷新控件UIRefreshControl的详解

    下拉刷新控件:UIRefreshControl 1.具体类信息: @interface UIRefreshControl : UIControl //继承控制类 - (instancetype)ini ...

  8. 覆写Activity的finish()方法

    MainActivity如下: package cn.testfinish; import android.app.Activity; import android.os.Bundle; import ...

  9. 会话追踪(session tracking)

    HTTP是一种无连接的协议,如果一个客户端只是单纯地请求一个文件(HTML或GIF),服务器端可以响应给客户端,并不需要知道一连串的请求是否来自于相同的客户端,而且也不需要担心客户端是否处在连接状态. ...

  10. django from组件 实现增加 删除 编辑(推荐用法)

    实现效果: 代码示例: 代码: models.py from django.db import models class UserInfo(models.Model): username = mode ...