IOS学习之路十七(通过delegate进行页面传值)
加入有A B两个页面,要实现从A跳到B的时候把值传过去,现在用delegate协议来实现
在A中定义一个协议,定义一个实现该协议的属性变量
在B中定义一个值(要获得的值类型)和set方法。
要传值B 必须实现A中定义的协议。
在A中获得B的指针调用set方法传值。
实例:(我的例子A是一个TableView)
A:(MenuViewController)
#import <UIKit/UIKit.h>
//声明协议
@protocol ToTopPassValueDelegate; @interface MenuViewController : UIViewController<UITableViewDataSource, UITableViewDelegate>{
}
//声明实现协议的变量(ID类型)
@property (nonatomic,retain) id<ToTopPassValueDelegate> passValueDelegate;
@property (weak, nonatomic) IBOutlet UITableView *leftTableView;
@property (nonatomic,copy) NSArray *arrayData; @end //定义协议
@protocol ToTopPassValueDelegate
- (void)setValue:(NSString *)value;
@end
.m文件:
@synthesize passValueDelegate;
//当点击一个cell时出发,进行传值及跳转
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ ToDoViewController *topViewController=[[ToDoViewController alloc] init];
self.passValueDelegate = topViewController;
[self.passValueDelegate setValue:[self.arrayData objectAtIndex:indexPath.row]];
//跳转。。。。。
}
@end
B:(ToDoViewController)
#import <UIKit/UIKit.h>
#import "MenuViewController.h" @interface ToDoViewController : UIViewController<ToTopPassValueDelegate> @property (nonatomic,copy) NSString *value; @end
.m文件:
@synthesize value;
-(void) setValue:(NSString *) str{
NSLog(@"%@",str);
}
原文出处:http://blog.csdn.net/wildcatlele
IOS学习之路十七(通过delegate进行页面传值)的更多相关文章
- IOS开发---菜鸟学习之路--(二十二)-近期感想以及我的IOS学习之路
在不知不觉当中已经写了21篇内容 其实一开始是没有想些什么东西的 只是买了Air后 感觉用着挺舒服的,每天可以躺在床上,就一台笔记本,不用网线,不用电源,不用鼠标,不用键盘,干干脆脆的就一台笔记本. ...
- 浅谈iOS学习之路(转)
转眼学习iOS已经快两年的时间了,这个路上有挫折也有喜悦,一步步走过来发现这个过程是我这一辈子的财富,我以前的老大总是对我说,年轻就是最大的资本(本人91年),现在才算是慢慢的体会到,反观自己走过的这 ...
- 浅谈iOS学习之路
转眼学习iOS已经快两年的时间了,这个路上有挫折也有喜悦,一步步走过来发现这个过程是我这一辈子的财富,我以前的老大总是对我说,年轻就是最大的资本(本人91年),现在才算是慢慢的体会到,反观自己走过的这 ...
- 纪录我的iOS学习之路
学习资料的网址 田伟宇(Casa Taloyum)有几篇介绍iOS架构的文章,一级棒!原博客链接. iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网络层设计方 ...
- IOS学习之路--OC的基础知识
1.项目经验 2.基础问题 3.指南认识 4.解决思路 ios开发三大块: 1.Oc基础 2.CocoaTouch框架 3.Xcode使用 -------------------- CocoaTouc ...
- 我的IOS学习之路(三):手势识别器
在iOS的学习中,对于手势的处理是极为重要的,如对于图片,我们经常需要进行旋转,缩放以及移动等.这里做一下总结,详见代码. - (void)viewDidLoad { [super viewDidLo ...
- IOS学习之路十四(用TableView做的新闻客户端展示页面)
最近做的也个项目,要做一个IOS的新闻展示view(有图有文字,不用UIwebview,因为数据是用webservice解析的到的json数据),自己一直没有头绪,可后来听一个学长说可以用listvi ...
- IOS学习之路七(通过xib自定义UITableViewCell)
一.新建iOS Application工程,选择Single View Application,不要选中Use Storyboard.假设指定的是product name是:UITableViewCe ...
- IOS学习之路七(使用 Operation 异步运行任务)
在 application delegate 头文件(.h)中声明一个 operation 队列和两个 invocation operations: #import <UIKit/UIKit.h ...
随机推荐
- T4模版引擎之生成数据库实体类
在通过T4模版引擎之基础入门 对T4有了初步印象后,我们开始实战篇.T4模板引擎可以当做一个代码生成器,代码生成器的职责当然是用来生成代码(这不是废话吗).而这其中我们使用的最普遍的是根据数据库生成实 ...
- ftk学习记录(button一片)
[ 声明:版权所有所有.欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 前面,我们说到了label,这里能够看一下label执行的效果是怎么样的. waterma ...
- php传引用和全局变量
原文:php传引用和全局变量 <?php /* * 函数内部改变变量的值两种方法 */ $a = 10; /* *方法一 :函数参数传引用 */ function methodOne(& ...
- CSS3 制作向左、向右及关闭图标的效果
先看一下效果 1.鼠标移入前的效果 2.鼠标移入的效果 3.制作步骤如下: 轮廓的CSS,就是利用圆角和宽度高度,制作出一个圆: <style> /*显示方式为 inline-block* ...
- hadoop 2.2.0集群安装
相关阅读: hbase 0.98.1集群安装 本文将基于hadoop 2.2.0解说其在linux集群上的安装方法,并对一些重要的设置项进行解释,本文原文链接:http://blog.csdn.net ...
- 屏蔽webbrowser控件右键的一种方法
原文:屏蔽webbrowser控件右键的一种方法 Option ExplicitPrivate Declare Sub ZeroMemory Lib "KERNEL32" Alia ...
- Android NDK的C++11标准支持
C++11于Android NDK它已被支持,本文介绍了如何NDK添加C++11支持标准. 在开源项目Cocos2d-x于,他已经加入C++11支持标准. 1.改动Application.mk文件,加 ...
- 在Mac OS X 10.8中配置Apache+PHP+MySQL
在Mac OS X 10.8中配置Apache+PHP+MySQL的内容包括: 配置Apache 配置PHP 安装MySQL 配置PHPAdmin 设置数据库默认字符集 一. 配置Apache 1. ...
- MyEclipse 设置全部jsp的编码为UFT-8 的方法
- 【Java&Android开源库代码分析】のandroid-async-http の开盘
在<[Java&Android开源库代码剖析]のandroid-smart-image-view>一文中我们提到了android-async-http这个开源库,本文正 ...