OC block 简单应用

@property (nonatomic, assign) void(^edit)(id);

    cells.edit=^(tableviewCell * cell){

       

    };

//block 做参数

typedef NSString*(^myblock)(void);

 

-(void)DwonLoad:(myblock)block;

+(id)getAPIDataresult:(void (^)(id resut))objct;

 

        //声明一个block

        //block  名字

        void (^block)(void);

        //block 指向函数

        block =^{

            //代码块

            NSLog(@"Hello World");

        };

       

        block();  //调用block

       

       

        void(^block1)(int);//声明变量名可以不用

       block1=^(int a){  //实现中变量名不可缺少

           NSLog(@"%d",a);

       };

       block1(3);

       

       int (^block2)(int a);

       block2=^(int a){

           return a+9;

       };

       

       NSLog(@"%d",block2(1));

       

       

        //声明与实现一起写

        int(^block3)(int,int)=^(int a,int b){

            returna+b;

        };

       

        NSLog(@"%d",block3(2,8));

       

        //被__block 修饰的变量才能在 block内部被修改

        __block int numA=10;

        int numB=20;

        //Block可以直接访问到所在函数的内部变量

        int(^block4)(void)=^{

           

           numA=30 //修改外部函数,外部函数在声明时需要__block修饰

           return numA+numB;

       };

       

       NSLog(@"%d",block4());

       

       

        NSString *strs=@"asdfg点点滴滴";

       

       NSString * (^str)(void)=^{

           NSMutableString*tempStr=[[NSMutableString alloc]initWithCapacity:strs.length];

           for(NSIntegeri=strs.length-1;i>=0;i--)

           {

                unicharch=[strs characterAtIndex:i];

                [tempStr appendFormat:@"%C",ch];

            }

           return tempStr;

       };

       

       NSLog(@"%@",str());

//block作为参数

- (void)backBlock(void (^)())block;

//block函数

@property (nonatomic,strong) void (^loadStatus)(loadStatus connection, float loadsStatus,NSError *error);



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值