StoryBoard简单使用

故事版(storyboard)是一种简洁的图形界面,程序员可以采取拖的形式搭建一个界面,现在使用的xcode默认都会创建一个main.storyboard,作为app的入口。

1、修改rootVC,默认的rootVC是系统帮我们创建的ViewController,我们可以通过eidtor—embed in来修改rootVC:

2、拖拽控件,并设置出口

控件分为很多种,一是只显示的,我们可以从右下角菜单直接拖到故事版,然后在右侧菜单设置一些属性即可

二是拖到界面后,我们需要在代码中对其进行修改,那么我么就需要设置其出口:首先点击右上角,将xcode一分为二,然后右侧文件改为此storyboard对应的.h文件:然后在左侧故事板中选中控件,按住control,同时用鼠标点中控件,不要松开,往右侧的.h文件中拖,会出现一个蓝线,记住,蓝线终点位置要在@@interface下,@end上:松开手指和鼠标,会弹出一个视图connection代表出口,name则是控件名称。

如果是button之类的控件,重复上面的操作,在弹出框中修改connection为action:

,name表示要生成的方法名

3、       添加一个故事版,在实际应用过程中,我们会需要不止一个界面,我们需要添加新的,那么我们只需要在main.storyboard的窗口中拖进去一个View controller即可:

,视图上方有三个选项,第一个代表要绑定的Viewcontroller文件:

4、       界面跳转(segue),页面跳转有两种方式,第一种就是通过控件直接拖拽,选中控件,按住control+鼠标左键,拖进要跳转到的界面,松开会弹出跳转方式,选择一种即可

第二种是利用ViewController与ViewController之间,拖拽添加segue,并给segue添加identifier。这种方法就需要在相应需要跳转的方法内写入代码,手动去设置它的跳转。

- (IBAction)buttonClicked:(id)sender {

[self performSegueWithIdentifier:@"vc2" sender:self];

}

跳转的方式我们可以自行设置:

5、界面传值,A跳转到B,并且需要传值,那么我们需要在A中添加一个方法prepareForSegue:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

ViewController1 *vc = segue.destinationViewController;//获取segue对应的VC

vc.str = @"345";

//KVC

//    if ([vc respondsToSelector:@selector(setStr:)]) {

//        [vc setValue:@"123" forKey:@"str"];

//    }

}

6、       创建独立的SB

选择new file,选择ios-àuser interface-àStoryboard-ànext,取个名字即可

然后选中创建好的.storyboard文件,拖进去一个Viewcontroller

然后选中其上方三个视图的第一个,设置其对应的class

7、       要使用上步创建的故事版,需要先根据故事板名字拿到其对象:

UIStoryboard *story = [UIStoryboard storyboardWithName:@"Storyboard3"//故事板名字不要后缀 bundle:[NSBundle mainBundle]];

然后通过故事版生成vc对象(需要使用故事版的identifier)

ViewController3 *vc = [story instantiateViewControllerWithIdentifier:@"controller3"];

StoryBoard 简单使用的更多相关文章

  1. storyboard简单认识

    ## storyboard文件的认识 - 作用:描述软件界面 - 程序启动的简单过程 - 程序一启动,就会加载`Main.storyboard`文件 - 会创建箭头所指的控制器,并且显示控制器所管理的 ...

  2. 怎样在xcode中使用storyboard

    StoryBoard是iOS 5的新特征,目的是取代历史悠久的NIB/XIB,对于已经习惯了xib文件的孩子们来说,StoryBoard还不是那么熟悉.经过两天的研究,有了一些心得,在此分享. 一.怎 ...

  3. UITableViewcell autolayout下动态高度

    项目中最经常使用的一个UI就是UITableView了.iOS7.8进一步优化了复用机制,用起来相当爽.配合Autolayout,适配工作减轻了非常多. 曾经做适配工作都是在heightForRow里 ...

  4. 《Programming WPF》翻译 第8章 5.创建动画过程

    原文:<Programming WPF>翻译 第8章 5.创建动画过程 所有在这章使用xaml举例说明的技术,都可以在代码中使用,正如你希望的.可是,代码可以使用动画在某种程度上不可能在x ...

  5. 8--UI 初步认识 简易计算器

    UI是App的根基:一个App应该是先有UI界面,然后在UI的基础上增加实用功能(2)UI相对简单易学:UI普遍是学习过程中最简单的一块,能快速拥有成就感和学习兴趣(3)UI至关重要:开发中的绝大部分 ...

  6. 如何使用Xcode进行高保真原型设计?

    转载自:http://www.guimobile.net/xcode-high-fidelity-prototype-design.html Xcode不仅是开发者用来开发iOS Apps的开发工具, ...

  7. iOS开发——UI进阶篇(八)pickerView简单使用,通过storyboard加载控制器,注册界面,通过xib创建控制器,控制器的view创建,导航控制器的基本使用

    一.pickerView简单使用 1.UIPickerViewDataSource 这两个方法必须实现 // 返回有多少列 - (NSInteger)numberOfComponentsInPicke ...

  8. [转]使用storyboard实现页面跳转,简单的数据传递

    由于最近才接触到IOS,苹果已经建议storyboard来搭建所有界面了,于是我也追随时尚,直接开始使用storyboard.(不料在涉及到页面跳转的时候,遇到的问题是:点击后没有任何反应)众所周知, ...

  9. 使用storyboard实现页面跳转,简单的数据传递

    由于最近才接触到IOS,苹果已经建议storyboard来搭建所有界面了,于是我 也追随时尚,直接开始使用storyboard.(不料在涉及到页面跳转的时候,遇到的问题是:点击后没有任何反应)众所周知 ...

随机推荐

  1. Huffman编码

    #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <cstdio> #include <cstri ...

  2. flask文件的上传和下载

    from werkzeug.utils import secure_filename from flask import Flask,render_template,jsonify,request i ...

  3. golang gbk转utf8 mssql access

    package ms2mysql import ( "bytes" "golang.org/x/text/encoding/simplifiedchinese" ...

  4. Window Server 2012 R2 下 IE11 浏览器 无法安装Flash 怎么解决

    不知道是不是我这个的系统的问题,不仅仅是图片有问题,Flash也有问题.用IE打开页面,一直提示安装,简直不胜其烦.尽管我有下载很多浏览器,但习惯了IE,所以也没想用其他浏览器代替IE. 刚开始我是点 ...

  5. Oracle中三种循环(For、While、Loop)

    1.ORACLE中的GOTO用法 DECLARE x number; BEGIN x := 9; <<repeat_loop>> --循环点 x := x - 1; DBMS_ ...

  6. c++父类和子类转化致命的代码错误

    最近在工作中,出现了严重的代码错误,对象的基类和子类的继承,代码大致如下: class A { }; class B : public A { } void main() { A* a;(用于子类对象 ...

  7. 【笔记】Android项目添加项目引用方法

    刚才在做phoneGap时,想试图自己添加phoneGap的lib组件(jar的源码),找了好多种方法,下面这种成功了 项目邮件 Properties, Android ,Add...  ,然后Dep ...

  8. 弄个知乎的粒子动态背景_实践particles.js

    好久没登录知乎,发现他们的登录页面粒子动态效果蛮炫的,查一下代码用了Particles.js基于Canvas画布创建粒子颗粒效果. 上图 上图:   感觉有比格,就照着弄了一个,玩玩.   githu ...

  9. xml的解析与创建——bing到youdao导入文件的转换

    首先是为了解决一个问题:如何将必应单词本中记录的单词转入到有道词典中去.实际上,必应词典可以导出xml文件,但是该文件有道词典无法解析.这里涉及到xml的解析和创建了. 代码如下: import ja ...

  10. rdlc报表DEMO

    rdlc报表demo  .net 4.0  vs2013 文本框,图像控件,checkbox样式的打印 下载链接