美文网首页
最基本block使用

最基本block使用

作者: Devin_明 | 来源:发表于2019-03-29 09:27 被阅读0次

    1)view中写法
    1、申请 (PdViewController)
    typedef void(^btnTouchClick) (NSInteger tag); //返回 传值(可以多个)
    2、block属性
    @property (nonatomic,copy) btnTouchClick touchBlock;
    3、按钮点击事件后,二级页面传值

    • (void)btnDown:(UIButton *)btn
      {
      if (self.touchBlock) {
      self.touchBlock(arc4random()%100);
      }
      }
      4、首页调用并实现 (MainViewController)
      pdView.touchBlock = ^(NSInteger tag) {
      NSLog(@"tag...........%ld",tag);
      };
      2)viewcontroller中写法,界面反向传值
      1、传值界面,b界面
      .h

      import <UIKit/UIKit.h>

    import "ViewController.h"

    typedef void(^returnBlock)(NSString *str);
    @interface BBViewController : UIViewController<MMDelegate>
    @property (nonatomic, copy) returnBlock block;
    @end
    .m

    • (void)btnClick
      {
      ViewController *vc = [[ViewController alloc] init];
      vc.delegate = self;
      [vc changeStr:@"21345678"];

      if (self.block) {
      self.block(@"b -->block");
      }

      [self dismissViewControllerAnimated:YES completion:nil];
      }
      2.展示界面
      包含BBViewController的头文件,实现即可

      • (void)btnClick
        {
        BBViewController *bb = [[BBViewController alloc] init];
        bb.block = ^ (NSString *str) {
        NSLog(@"%@",str);
        };

      [self presentViewController:bb animated:YES completion:nil];
      }

    相关文章

      网友评论

          本文标题:最基本block使用

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