关闭

IOS--代理传值

标签: IOS代理传值
149人阅读 评论(0) 收藏 举报
分类:

1.逆向传值:

由B页面向A页面传值:

B页面

#import <UIKit/UIKit.h>


@protocol PassTrendValueDelegate

-(void)passTrendValues:(NSString *)values;//定义协议与方法

@end



@interface SecondViewController : UIViewController

///定义向趋势页面传值的委托变量

@property (retain,nonatomic) id <PassTrendValueDelegate> trendDelegate;



@property (nonatomic ,strong) NSString * data;


@end


#import "SecondViewController.h"

#import "FirstViewController.h"

@interface SecondViewController ()


@end


@implementation SecondViewController


- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view.

    NSLog(@"data=%@",self.data);

    

}


- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}


/*

#pragma mark - Navigation


// In a storyboard-based application, you will often want to do a little preparation before navigation

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

    // Get the new view controller using [segue destinationViewController].

    // Pass the selected object to the new view controller.

}

*/

- (IBAction)backonclick:(id)sender {

    FirstViewController * first=[[FirstViewController alloc] init];

    self.trendDelegate=first;

    [self.trendDelegate passTrendValues:@"huguobin"];

    [self dismissViewControllerAnimated:YES completion:^{}];

}


@end


A页面

#import <UIKit/UIKit.h>

#import "SecondViewController.h"

@interface FirstViewController : UIViewController<PassTrendValueDelegate>{


    

}


@end


#import "FirstViewController.h"

#import "SecondViewController.h"

@interface FirstViewController ()


@end


@implementation FirstViewController


- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view.

}


- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}



#pragma mark - Navigation


// In a storyboard-based application, you will often want to do a little preparation before navigation

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

    // Get the new view controller using [segue destinationViewController].

    // Pass the selected object to the new view controller.

    

    SecondViewController *second=segue.destinationViewController;

    second.data=@"我是第一个页面的值";


}

#pragma mark 实现传值协议方法

-(void)passTrendValues:(NSString *)values{

    NSLog(@"value=%@",values);


}


@end



0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

【iOS】代理传值与块代码传值

主线程与子线程经常需要进行数据的传递,不同的类之间,不同的控制器之间都需要。 而且经常需要监听一个动作的完成,而后才去做相应事件。(代理是一对一的关系)。 一、代理传值 代理是一种设计模式。iOS中用的非常多。可以通过自定义代理来进行传值。 参见我的这篇文章 http://blog.csd...
  • xn4545945
  • xn4545945
  • 2014-07-14 02:28
  • 8414

iOS 页面间几种传值方式(属性,代理,block,单例,通知)

第二个视图控制器如何获取第一个视图控制器的部分信息 例如 :第二个界面中的lable显示第一个界面textField中的文本 这就需要用到属性传值、block传值 那么第一个视图控制器如何获的第二个视图控制器的部分信息 例如:第一个界面中的lable显示第二个界面textField中的文本 这就需要...
  • m372897500
  • m372897500
  • 2016-05-06 17:02
  • 1120

oc三种传值方式:通知传值,代理传值,block传值

三种传值方式分别为:通知传值,代理传值,block传值 通知和代理的区别(重点) 1,代理可以给sender返回值;通知不能返回值 2,通知代理量小,代理实现步骤比较繁琐 3,通知是一对多/一对无的关系; 代理是一对一关系 4,通知是一个监听者,效率较低.
  • tundraw
  • tundraw
  • 2015-07-16 22:25
  • 2394

Swift 协议代理传值(十)

Objective-C这里演示反向传值SecondVC.h @protocol sendValueDelegate <NSObject> - (void)sendValueString:(NSString *)str; @end @interface OC_SecController :...
  • sinat_30162391
  • sinat_30162391
  • 2016-04-01 15:17
  • 909

iOS基础控件-UINavigationController 中的传值,代理传值,正向传值,反向传值

利用代理回调,成员变量,完成在导航栏控制器UINavigationController中的各个页面进行相互的传值,适合iOS开发的初学者联系各个界面的传值练习
  • wxs0124
  • wxs0124
  • 2014-10-20 09:50
  • 1776

iOS - 代理协议,正向或逆向传值,属性传值的简单实用

本来今天准备写照片的多选和相机的调用自定义,但是突然想到代理和协议这两个东西,觉得有必要写一下 代理和协议,一听感觉很高大上,以至于在学习之初,我都不敢用这个东西,觉得是高手必备,菜鸟仰望的东西,只是后来偶然的一次看到了关于代理协议的代码,觉得这他么是协议,握草,好好使啊,就开始自己写简单...
  • requestnslog
  • requestnslog
  • 2016-12-02 08:40
  • 276

Android开发之Handler(五)几种常见的传值方式

前面介绍handler的时候,也用到过几种传值方式,今天来总结一下,并且重点说一下bundle方式,代码如下: [java] view plaincopy package com.handlerThread; ...
  • u012554102
  • u012554102
  • 2015-06-22 11:37
  • 304

谈谈ios传值方式(属性传值、代理传值、Block传值、单例传值、通知传值、KVC传值)

一下所有的演示由:AViewController 和 BViewController 完成简写(AVC和BVC) 1.属性传值(AVC代码传到BVC代码): AVC 导入  BVC BVC声明属性 //接收值 @property (nonatomic, copy) NS...
  • TianYou_Code
  • TianYou_Code
  • 2016-08-03 10:48
  • 792

Swift 传值之代理传值

在Swift中,传值的方法有很多,都很简便,之前介绍了属性传值,swift的属性传值可以从下级页面传到上级页面,现在来介绍如何用代理传值。
  • zhangjitao_boke
  • zhangjitao_boke
  • 2016-01-29 14:14
  • 878

iOS简单代理反向传值

额,,被我弄复杂的iOS代理反向传值,看官们就将就着看吧
  • sinat_31511831
  • sinat_31511831
  • 2015-10-24 15:33
  • 689
    个人资料
    • 访问:103130次
    • 积分:2313
    • 等级:
    • 排名:第18738名
    • 原创:96篇
    • 转载:180篇
    • 译文:8篇
    • 评论:3条
    最新评论