美文网首页
委托与代理

委托与代理

作者: 王老板 | 来源:发表于2015-12-11 13:43 被阅读22次
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    if (buttonIndex == 0) {
        // 委托
        [_delegate buyIphone:@"📱"];
    }else if (buttonIndex == 1){
    // 通知
        NSDictionary *dic = @{@"boom":@"💣"};
        [[NSNotificationCenter defaultCenter] postNotificationName:@"changeLabel" object:dic];
        
    }
}

通知

  • 第一个页面
    • 1.注册通知
[NSNotificationCenter defaultCenter] addObserver:self 
selector:@selector(justDoIt:) name:@"changeLabel" object:nil];
 *    2.拿到暗号,做事情(changeLabel为暗号)
    ```

-(void)justDoIt:(NSNotification *)obj{
NSDictionary *dic = [obj object];
_notificationOrigionLabel.text = dic[@"boom"];
}```

  • 第二个页面
    • 1:对暗号
    • 在button里写
        NSDictionary * dic = @{@"boom":@"💣"};
        [[NSNotificationCenter defaultCenter] postNotificationName:@"zhadan" object:dic];
 *  changeLabel为暗号  

委托

@protocol BuyIphone6sDelegate <NSObject>
-(void)buyIphone:(NSString *)str;
@property(nonatomic,strong)id<BuyIphone6sDelegate>delegate;
  • 【第二个页面】
  • 1在第二个页面写协议,写在interface 上面
    @protocol BuyIphone6sDelegate <NSObject>
  • 2.在第二个页面 实例化协议的变量
    -(void)buyIphone:(NSString *)str;
  • 3.让协议变量去做做协议中的方法
    @property(nonatomic,strong)id<BuyIphone6sDelegate>delegate;
  • 在button里实现
 UIAlertAction *enter = [UIAlertAction actionWithTitle:@"委托" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
        [_delegate buyIphone:@"📱"];
        }];
  • 方法
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    if (buttonIndex == 0) {
        // 委托
        [_delegate buyIphone:@"📱"];
  • 【第一个页面】
    • 1.跳转页面的时候,签合同。

vc2.delegate = self; self为vc1

  • 2.在interface中实现这个协议
    @interface DPNViewController ()<BuyIphone6sDelegate>
  • 3.在.m中实现协议方法
-(void)buyIphone:(NSString *)str{
    
    _delegateOriginLabel.text = str;
}

相关文章

  • 委托与代理

    通知 第一个页面1.注册通知 -(void)justDoIt:(NSNotification *)obj{NSDi...

  • Kotlin | 委托(Delegation)详解

    本文要点概述 辨析委托模式与代理模式 接口委托(Delegated interface) 属性委托(Delegat...

  • Java动态代理

    Java动态代理介绍 代理模式是常用的java设计模式,它的特征是代理类与委托类有同样的接口,代理类主要负责为委托...

  • Java 动态代理(JDK 和 cglib)[转]

    原文 代理模式 代理模式是常用的 Java 设计模式,它的特征是代理类与委托类有同样的接口,代理类主要负责为委托类...

  • 微观经济学——棘轮效应

    概念: 代理两难:委托人和代理人的结构,委托人不愿意与代理人分享利益,代理人不愿意为委托人尽心尽力。 激励相容:私...

  • Java代理模式

    代理的实现分为: 1.静态代理实现 2.动态代理 委托类和委托对象:委托类是一个类,委托对象是委托类的实例。代理类...

  • Spring框架学习的第三天

    代理模式 代理模式是常用的Java 设计模式,它的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消...

  • 代理模式

    一、什么是代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类...

  • JAVA反射篇之动态代理

    代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息...

  • Java语言中代理模式简介(一)

    1 代理的作用 代理模式是常用的Java设计模式,它的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处...

网友评论

      本文标题:委托与代理

      本文链接:https://www.haomeiwen.com/subject/ydyyhttx.html