ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 低调看直播体育app软件下载 >> IOS开发 >> IOS传值--代理传值,block传值,NSNotificationCenter传值

IOS传值--代理传值,block传值,NSNotificationCenter传值

来源:网络整理     时间:2015-04-18     关键词:

本篇文章主要介绍了"IOS传值--代理传值,block传值,NSNotificationCenter传值",主要涉及到方面的内容,对于IOS开发感兴趣的同学可以参考一下: 一:利用代理传值,就是利用代理进行通信。接口文件:#import @protocol Cdele...

一:利用代理传值,就是利用代理进行通信。

接口文件:

#import

@protocol Cdelegate

-(void)change:(NSString *)name;

@end

.h文件

@interface ViewController : UIViewController

.m文件

- (IBAction)pushBB:(id)sender {

    BViewController *bc=[[BViewController alloc]initWithNibName:@"BViewController" bundle:[NSBundle mainBundle]];

    bc.delegate=self;

    [self presentViewController:bc animated:YES completion:nil];

}

BViewController文件

.h文件

#import "ViewController.h"

#import "Cdelegate.h"

@interface BViewController : ViewController

@property (weak, nonatomic) IBOutlet UITextField *name;

@property(nonatomic,assign)id delegate;

@property(nonatomic,copy)ablock block;

- (IBAction)popBB:(id)sender;

@end

.m文件

- (IBAction)popBB:(id)sender {

    [self.delegate change:self.name.text]; 

    [self dismissViewControllerAnimated:YES completion:nil];

}

二:block传值

typedef void (^ablock)(NSString *str);

@property(nonatomic,copy)ablock block;

- (IBAction)popBB:(id)sender {

    //[self.delegate change:self.name.text];

    self.block(self.name.text);

    [self dismissViewControllerAnimated:YES completion:nil];

}

- (IBAction)pushBB:(id)sender {

    BViewController *bc=[[BViewController alloc]initWithNibName:@"BViewController" bundle:[NSBundle mainBundle]];

    bc.block=^(NSString *str){

        self.aname.text=str;

    };

    [self presentViewController:bc animated:YES completion:nil];

}

三:通知

   NSDictionary *dic=[NSDictionary dictionaryWithObject:self.name.text forKey:@"name"];

    

    [[NSNotificationCenter defaultCenter]postNotificationName:@"changeText" object:self userInfo:dic];

- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

       [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(changeText:) name:@"changeText" object:nil];

}

以上就介绍了IOS传值--代理传值,block传值,NSNotificationCenter传值,包括了方面的内容,希望对IOS开发有兴趣的朋友有所帮助。

本文网址链接:http://www.codes51.com/article/detail_127897.html

相关图片

相关文章