iOS中Storyboard使用要点记录
摘要:
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使用要点记录的更多相关文章
- gulp自动添加版本号过程中的一些要点记录
1.打开node_modules\gulp-rev\index.js 第144行 manifest[originalFile] = revisionedFile; 更新为: manifest[orig ...
- JAVA 中LinkedHashMap要点记录
JAVA 中LinkedHashMap要点记录 构造函数中可能出现的几个参数说明如下: 1.initialCapacity 初始容量大小,使用无参构造方法时,此值默认是16 2.loadFactor ...
- iOS 7 中 StoryBoard 总体缩放
iOS 7 中 StoryBoard 总体缩放 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用 ...
- iOS中xib与storyboard原理,与Android界面布局的异同
用文本标记语言来进行布局,用的最多的应该是HTML语言.HTML能够理解为有一组特殊标记的XML语言. 一.iOS中xib与storyboard显示原理 在iOS中基本的布置界面的方式有3种:代码.x ...
- iOS中的事件处理
前言:iOS中事件处理,是一个非常重要也非常难得地方.涉及到响应者链的地方的面试题,非常多工作两三年的老鸟也未必能回答的非常专业.这里具体介绍一下iOS中的事件处理,以及响应者链. 1. 三大事件 触 ...
- Android开发入门要点记录:四大组件
cocos2dx跨平台开发中需要了解android开发,昨天快速的浏览了一本Android开发入门教程,因为之前也似懂非懂的写过Activity,Intent,XML文件,还有里面许多控件甚至编程思想 ...
- iOS中数据库应用基础
iOS 数据库入门 一.数据库简介 1.什么是数据库? 数据库(Database) 是按照数据结构来组织,存储和管理数据的仓库 数据库可以分为2大种类 关系型数据库(主流) PC端 Oracle My ...
- iOS 中的 HotFix 方案总结详解
相信HotFix大家应该都很熟悉了,今天主要对于最近调研的一些方案做一些总结.iOS中的HotFix方案大致可以分为四种: WaxPatch(Alibaba) Dynamic Framework(Ap ...
- iOS:iOS中的多控制器管理
iOS中的控制器有三种创建方式: 1.通过storyboard创建 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@" ...
随机推荐
- OpenERP实施记录(13):出库处理
本文是<OpenERP实施记录>系列文章的一部分. 在前面的文章中,业务部门接到沃尔玛3台联想Y400N笔记本电脑的订单,ABC公司立即采购了8台(3台送货+5台备库存)回来,完成了入库和 ...
- 【IntellJ IDEA】idea上所有代码都报错了
可能会碰到蓝屏,内存溢出重启idea等特殊情况. 重新打开idea后发现原本的代码全都报错了 正确的解决方法: 方法很简单 执行idea工具栏上下面的菜单: File -> Invalidate ...
- 常用的基本控件 android常用控件
1.TextView:(文本框):不能编辑 android:textColor="@color/tv_show_color" 字体颜色 android:textSize ...
- 实验3 OpenGL几何变换
转自:http://www.cnblogs.com/opengl/archive/2012/10/30/2747130.html 1.实验目的: 理解掌握一个OpenGL程序平移.旋转.缩放变换的方法 ...
- [翻译] SoundManager 音频管理器
SoundManager 音频管理器 https://github.com/nicklockwood/SoundManager Purpose SoundManager is a simple cla ...
- Virtualbox虚拟机安装CentOS 6.5图文详细教程
http://blog.csdn.net/risingsun001/article/details/37934975
- iOS:下拉刷新控件UIRefreshControl的详解
下拉刷新控件:UIRefreshControl 1.具体类信息: @interface UIRefreshControl : UIControl //继承控制类 - (instancetype)ini ...
- 覆写Activity的finish()方法
MainActivity如下: package cn.testfinish; import android.app.Activity; import android.os.Bundle; import ...
- 会话追踪(session tracking)
HTTP是一种无连接的协议,如果一个客户端只是单纯地请求一个文件(HTML或GIF),服务器端可以响应给客户端,并不需要知道一连串的请求是否来自于相同的客户端,而且也不需要担心客户端是否处在连接状态. ...
- django from组件 实现增加 删除 编辑(推荐用法)
实现效果: 代码示例: 代码: models.py from django.db import models class UserInfo(models.Model): username = mode ...