最近刚刚接触ios开发,也没有一本好的书能够阅读,全部的功能都只能靠本身的摸索实现。这两天在作多个页面之间的跳转和传值问题,ios
页面跳转看我另外一篇文章http://blog.csdn.net/xiaotanyu13/article/details/7711954函数
如今将用delegate来传值atom
一开始看网上的资源有些看不懂,总感受很高深的样子.net
后来一想,实际上delegate传值的实质就是:指针
好比右AB两个页面,A想要传值给B ,就只要先在A中获得B的指针,而后将想要传的值赋给B,以后跳转,blog
话很少说上代码资源
首先咱们须要建一个delegate:开发
@protocol PassValueDelegateget
- (void)setValue:(NSString *)value;it
@end
其实这个主要是为了更好的管理你须要传递什么值
而后
而后在A.h里面定义
@interface A:TTTableViewController{
id<PassValueDelegate> passDelegate;
}
@property(nonatomic, retain) id<PassValueDelegate> passDelegate;
在A.m里面
@synthesize passDelegate;
(个人类不够直观,摘别人的文字把)
而后在须要跳转的时候,
buttonClicked:(id) sender{
B *_b = [[B alloc] init];
self.passDelegate = _b; // 这里和B进行交互,下一句代码就是对应的赋值
[self.passDelegate setValue: NEED_PASS_VALUE];
在B.h里面
@interface B : NSObject <PassValueDelegate> {
NSString* _value;
}
- (void) setValue:(NSString *) value;
在B.m里面
- (void) setValue:(NSString *) value{
_value = value;
}
实现了这些函数之后
你就在B中获得了A传来的值 也就是_value这个变量