最基本block使用

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];
    }

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,880评论 1 32
  • 1.OC里用到集合类是什么? 基本类型为:NSArray,NSSet以及NSDictionary 可变类型为:NS...
    轻皱眉头浅忧思阅读 5,232评论 0 3
  • D先生放下喷水壶,用手擦了擦阳台上的窗户玻璃,这才意识到是外面在下雨。他往外看了看,一排排的路灯照着潮湿的路面,反...
    面具与世相阅读 1,819评论 0 0
  • 他是个男人,只不过是个初中毕业生,一个曾经的街头小混混,一个曾经的小马仔。 或许,曾经的经历给过他很多的教训或者经...
    烦人的昵称阅读 2,187评论 0 0
  • 《三生三世十里桃花》掀起的“桃花热”还未散去,深中“桃花热”的我们,还未来得及长叹,就已开启“重温模式”——白浅与...
    丛阑阅读 5,513评论 0 6

友情链接更多精彩内容