首页 > 移动平台 > 详细

IOS基础_Block语法的简单使用

时间:2014-08-09 18:46:28      阅读:370      评论:0      收藏:0      [点我收藏+]

开始学IOS的时候没怎么接触过block语句,在后来用到的越来越多,就不得不学了,刚开始理解比较困难的,然后自己做了一个例子就慢慢理解了,不说废话了,上代码:


正常的简单地申明调用一个block语句是这样的:

//申明

int (^yxpBlock)(int, int)  =^(int a ) {return a*a ;};      

说明:返回值(^语句块名称)(传人参数类型)=^(传人参数){主体};


//调用

int result = square(5);


我建了一个测试项目包含了(yxpAppDelegate和yxpViewController)两个类


在yxpViewController类里面


申明了一个block语句类型

@classyxpViewController;

typedef void (^yxpBlock) (yxpViewController *);


在yxpViewController 申明了yxpBlock变量

@interface yxpViewController :UIViewController

@property (nonatomic,assign)yxpBlock yxpblock;

@end


在touchesBegan: withEvent:调用block语句 (调用block语句要用一根下划线,@propert默认提供)

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{

   _yxpblock(self);

}


//在yxpAppDelegate中使用了block语句

__blockNSString *str=@"触摸屏幕";

yxpViewController *viewContro=[[yxpViewControlleralloc] init];

 viewContro.yxpblock=^(yxpViewController *viewController){

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

   };

   self.window.rootViewController=viewContro;


注意:block语句可以读取外部变量,但是不能写入,如果需要在block语句里修改外部变量,外部变量要用__block (两根下划线)标识

将这个例子弄懂相信你就对block语句有一个初步的了解了

IOS基础_Block语法的简单使用,布布扣,bubuko.com

IOS基础_Block语法的简单使用

原文:http://blog.csdn.net/yxiaoping/article/details/38457321

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!