故事板 — 视图切换(segue)与传值

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中也是如此,因此要注意他们创建的时机。

时间: 2024-11-05 12:23:21

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

故事板和自定义切换效果

1.故事板并不完美,它由一些明显的不足之处.但是故事板是构建用户界面的趋势,以及如何使用故事板来完成用nib文件完成的事情(比如和控制器进行通信). 2.添加故事板:方式和添加新文件的方式相同.事实上,从Xcode 5开始,就已经默认打开了Use Storyboard选项,这使得从应用删除故事板变得更加困难了. 3.info.plist中的属性:使用故事板创建新工程时,应用的info.plist键中含有一个名为UIMainStoryboardFile的键.这个键取代了iOS5以前使用的NSMai

UI1_ViewController视图切换及Appdelegate

// // ThirdViewController.h // UI1_ViewController视图切换及Appdelegate // // Created by zhangxueming on 15/7/3. // Copyright (c) 2015年 zhangxueming. All rights reserved. // #import <UIKit/UIKit.h> @interface ThirdViewController : UIViewController @end //

iOS基础 02 StoryBoard 故事板文件

iOS基础 02 StoryBoard 故事板文件 目录: 1. 故事板的导航特点 2. 故事板中的Scene和Segue 3. 本文最后 在上篇HelloWorld工程中有一个Main.storyboard文件,它被称为“故事板”(storyboard)文件. 它可以描述应用中有哪些界面,界面有哪些控件以及它们的事件. 此外,故事板还能描述界面之间是如何导航的. 1. 故事板的导航特点 在包含多个视图控制器的情况下,采用故事板管理比较方便,而且故事板还可以描述界面之间的导航关系. 下面我们举例

IOS开发系列--TableView、多个TableViewCell、自定义Cell、Cell上画画(故事板+代码方式),ios7tableview索引

在此之前,我们已经创建了一个通过简单的表视图应用程序并显示预定义的图像.在本教程中,我们将继续努力,使应用程序变得更好,: >不同的行显示不同的图像 - 上个教程,我们的所有行显示相同的缩略图.那么不同的食物显示不同的图片不是更好么? >自定义视图单元-我们将展示我们自己的视图来替代默认表单元格样式 显示不同缩略图 在我们更改代码之前,让我们回顾显示缩略图的代码. 最后,我们增加了一个行代码指示UITableView每一行显示"creme_brelee.jpg"这张图片.显

UIView 视图切换

UIView之间常用视图之间切换方式 转载自:http://www.jianshu.com/p/0d53f9402c07 在平时编写代码的过程中,页面之间的跳转可以说就和MVC模式一样是开发必须的.但是可能我们知道一种或者几种页面之间的跳转,今天我就来总结一下我在开发之中遇到的所有的页面跳转代码.(关于控制器之间的简单的跳转,比如导航控制器跳转.故事版跳转.简单的模态跳转不在这里多说) 一.代理跳转. 通常我们在跳转中经常是通过你点击了某个事件或者某个操作使你进行控制器之间的跳转.那么我们可以在

iOS:删除storyBoard,纯代码实现UITabBarController的视图切换功能

storyboard是一个很强大的编写代码的辅助工具,可以帮助布局多个视图之间的联系,既直观又能减少代码量:但是,作为一个程序员,在不使用storyboard的情况下,纯代码编写是必须的技能. 下面就用纯代码实现纯代码实现UITabBarController的视图切换功能,咱就实现三个视图之间的转换吧,代码不多,容易看的明白. 步骤: 1.删除storyboard故事板和UIViewController 2.创建三个控制器类,均继承自UIViewController,分别为FirstViewCo

iOS开发系列--视图切换

概述 在iOS开发中视图的切换是很频繁的,独立的视图应用在实际开发过程中并不常见,除非你的应用足够简单.在iOS开发中常用的视图切换有三种,今天我们将一一介绍: UITabBarController UINavigationController 模态窗口 UITabBarController iOS三种视图切换的原理各不相同: UITabBarController:以平行的方式管理视图,各个视图之间往往关系并不大,每个加入到UITabBarController的视图都会进行初始化即使当前不显示在

(译)Getting Started——1.2.4 Tutorial:Storyboard(故事板)

该教程是基于你在前面的课程中构建的项目上进行的.学完本教程后,你将使用你前面学到的视图.视图控制器.动作.导航的内容,还会为应用创建一些关键的用户界面,并在场景中添加行为 以下就是本节课的内容: 1. 使用storyboard来定义应用内容和流程 2. 管理多个视图控制器 3. 在用户界面上,给元素添加动作 完成本节教程后,你的应用应该如下所示: 创建第二个场景 到现在为止,你所操作的只是一个由视图控制器管理的单场景,它就是一个可以把事件添加到待办事件列表的页面,即添加事件的场景.现在,是时候创

iOS:视图切换的第一种方式:模态视图

一.UIModalController:模态窗口(一个控制器模态出另一个控制器的模态窗口) 当我们在view controller A中模态显示view controller B的时候,A就充当presenting view controller(弹出VC),而B就是presented view controller(被弹出VC).官方文档建议这两者之间通过delegate实现交互,在被弹出的VC中定义delegate,然后在弹出VC中实现该代理,这样就可以比较方便的实现两者之间的交互. 1.以