IOS block
2015-08-19 10:21
253 查看
@implementation ViewController
- (void)viewDidLoad
{
[super
viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSLog(@"我在完手机");
NSLog(@"手机没电了");
//调用手机充电方法,块内容为回调代码。
[self
chargeMyiPhone:^{
NSLog(@"出去逛街");
}];
NSLog(@"我在看电视");
}
/*!
* 给手机充电方法
*
* @param finishBlock 充电完成后的回调方法:void表示返回类型为void,(^)表示块类型,(void)表示无参数,finishBlock就是块的名字,理解为实参
*
* @since V1.0
*/
-(void)chargeMyiPhone:(void(^)(void))finishBlock
{
double delayInSeconds =
10.0;
dispatch_time_t popTime =
dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds *
NSEC_PER_SEC));
//10秒后调用
dispatch_after(popTime,
dispatch_get_main_queue(), ^(void){
NSLog(@"充好电了");
finishBlock();
});
}
- (void)viewDidLoad
{
[super
viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSLog(@"我在完手机");
NSLog(@"手机没电了");
//调用手机充电方法,块内容为回调代码。
[self
chargeMyiPhone:^{
NSLog(@"出去逛街");
}];
NSLog(@"我在看电视");
}
/*!
* 给手机充电方法
*
* @param finishBlock 充电完成后的回调方法:void表示返回类型为void,(^)表示块类型,(void)表示无参数,finishBlock就是块的名字,理解为实参
*
* @since V1.0
*/
-(void)chargeMyiPhone:(void(^)(void))finishBlock
{
double delayInSeconds =
10.0;
dispatch_time_t popTime =
dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds *
NSEC_PER_SEC));
//10秒后调用
dispatch_after(popTime,
dispatch_get_main_queue(), ^(void){
NSLog(@"充好电了");
finishBlock();
});
}
相关文章推荐
- iOS设计模式——Category
- IOS开发教程--NSLog输出格式控制
- iOS开发 画一条线
- Fiddler抓包ios设备
- iOS性能优化:Instruments使用实战(转)
- IOS开发之格式化日期时间
- IOS】Instruments 使用教程
- iOS项目开发实战——配置自定义动画
- iOS 浅谈AFNetworking
- iOS 浅谈AFNetwork
- ios根据日期获取年月日分秒及常用操作(问题)
- iOS项目开发实战——视图动画效果
- IOS开发——手动设置屏幕旋转
- iOS中nil 、NULL、 Nil 、NSNull的区别
- iOS中assign,copy,retain之间的区别以及weak和strong的区别
- iOS开发中的小技巧
- ios 简单的音乐播放器,单机
- xcode文件找不到---“AFNetworking.h”file not found
- 单例——iOS学习连载19
- ios开发数组排序(数组中包括字典)