1、传值问题:为什么不能给控件的接口赋值
如执行Segue跳转
[self performSegueWithIdentifier:GAPlayeVideo sender:gaVideo];
//在跳转到目标界面前,给目标对象传递参数
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
     if ([segue.identifier isEqualToString:GAPlayeVideo]){
        //获取目标ViewController
        GAPlayerViewController *gaPlay=segue.destinationViewController;
        //传递参数
        gaPlay.gaVideo=sender;
    }
}
当执行了这句: gaPlay.gaVideo=sender;
系统就会来到这个对象的成员变量的setting方法,
-(void)setGaVideo:(GAVideo *)gaVideo{
    _gaVideo = gaVideo;
    self.titleLabel.text = gaVideo.name; //self.titleLabel 是UILabel类型的输出接口,在storyBoard中的GAPlayerViewController类绑定的vc界面上
    self.title = gaVideo.name;
    self.VideoURL = [NSURL URLWithString:gaVideo.videoSite]; //self.VideoURL:是自定义的成员变量,可以赋值
//    NSLog(@"%@",gaVideo.videoSite);
}
注意了:此时,只是给gaVideo这个自定义的成员变量赋值;但是self.titleLabel这个输出接口控件,还在storyBoard中,还没有初始化,还没有加载进来,因此 self.titleLabel = nil,所以是不能给self.titleLabel赋值的(因为这个对象都没有,怎么可以给它的属性赋值呢)。
此外,自定义的成员变量是可以给他们赋值的,因为当创建这个GAPlayerViewController类的对象的时候,就创建了。
 
那么,到了什么时候才可以给控件的接口赋值呢?
答:当Viewdidload的时候就可以赋值。
在xib中也是如此,因此要注意他们创建的时机。

故事板 — 视图切换(segue)与传值的更多相关文章

  1. UI1_ViewController视图切换及Appdelegate

    // // ThirdViewController.h // UI1_ViewController视图切换及Appdelegate // // Created by zhangxueming on 1 ...

  2. iOS系列 基础篇 02 StoryBoard 故事板文件

    iOS基础 02 StoryBoard 故事板文件 目录: 1. 故事板的导航特点 2. 故事板中的Scene和Segue 3. 本文最后 在上篇HelloWorld工程中有一个Main.storyb ...

  3. 故事板(Storyboard)

    1 使用Storyboard完成各项常见功能 1.1 问题 故事板Storyboard是IOS5开始引入的一个新的系统,将多个视图文件(类似xib文件)集中到一个单独的可视化工作区间,负责创建和管理所 ...

  4. Swift - 故事板storyboard的用法

    故事板(UIStoryboard)可以很方便的进行界面的设计,下面总结了常用的几个操作方法: 1,初始场景 选中View Controller,在属性面板里勾选Is Initial View Cont ...

  5. [Swift实际操作]八、实用进阶-(8)使用performSegue在故事板页面之间进行数据传递

    本文将演示故事板页面之间的数据传递.首先在一个空白项目中,打开项目自带的故事板文件(Main.storyboard).故事板中已经拥有了一个视图控制器,点击选择该视图控制器.然后依此点击[Editor ...

  6. iOS开发系列--视图切换

    概述 在iOS开发中视图的切换是很频繁的,独立的视图应用在实际开发过程中并不常见,除非你的应用足够简单.在iOS开发中常用的视图切换有三种,今天我们将一一介绍: UITabBarController ...

  7. iOS 5 故事板入门(3)

    原文: http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-2 Segues 介绍 是时候在我们的故事板中加入更 ...

  8. iOS 5 故事板入门(4)

    原文: http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-2 让 AddPlayer 窗口动起来 现在,我们先 ...

  9. UIView 视图切换

    UIView之间常用视图之间切换方式 转载自:http://www.jianshu.com/p/0d53f9402c07 在平时编写代码的过程中,页面之间的跳转可以说就和MVC模式一样是开发必须的.但 ...

随机推荐

  1. Spring Framework 中启动 Redis 事务操作

    背景: 项目中遇到有一系列对Redis的操作,并需要保持事务处理. 环境: Spring version 4.1.8.RELEASE Redis Server 2.6.12 (64位) spring- ...

  2. hadoop-1.1.2集群搭建

    Hadoop安装分为三种不同模式: 本地模式:hadoop在运行时,不使用hdfs,而是使用linux操作系统的文件系统.(默认hadoop就是本地模式) 伪分布模式:在一个节点上运行hadoop(指 ...

  3. cmake编译win下64位obs

    obs是一款开源编码推流工具,简单易用,非常流行.一次项目中,发现本台式机I3处理器下32位obs推流CPU使用率100%.而使用的第三方设备在64位下,性能较好.所以需要编译64位obs并且编译相应 ...

  4. HTTP响应报文与工作原理详解

    超文本传输协议(Hypertext Transfer Protocol,简称HTTP)是应用层协议.HTTP 是一种请求/响应式的协议,即一个客户端与服务器建立连接后,向服务器发送一个请求;服务器接到 ...

  5. 2048-AI程序算法分析

    转自:CodingLabs 针对目前火爆的2048游戏,有人实现了一个AI程序,可以以较大概率(高于90%)赢得游戏,并且作者在stackoverflow上简要介绍了AI的算法框架和实现思路.但是这个 ...

  6. SpringMVC学习笔记

    1.严格实现MVC设计思想的框架,严格分层,减少耦合: 2.组件(红色必需) 2.1 DispatcherServlet 前端控制器 2.2 Controller 业务控制器 2.3 Handler ...

  7. AVD设置屏幕大小

    相关资料: 1.http://jingyan.baidu.com/article/fedf0737775d2835ac897700.html

  8. Gym 100507A About Grisha N. (水题)

    About Grisha N. 题目链接: http://acm.hust.edu.cn/vjudge/contest/126546#problem/A Description Grisha N. t ...

  9. Umbraco中的Examine Search功能讲解

    转载原地址: http://24days.in/umbraco/2013/getting-started-with-examine/ Everytime I read the word Examine ...

  10. Map 排序

    /** * 通过map 的 value 排序,并返回排序后的第一个条目 * * @param m 待排序集合 * @param desc true:降序排序,false:升序排序 * @return ...