iOS 知识点

ios block使用

2015-12-01  本文已影响2190人  王小宾

iOS Block的使用
一 .最简单的block使用******  使用block的三个步骤:1.定义block变量 2.创建block代码块 3.调用block匿名函数
  定义一个block的构成包括:返回值,block名,参数类型。
  block代码块作为一个匿名函数是可以被写在其他方法中的,所以一般我们将block代码块写在其他方法里,调用该方法的时候block代码块将不会被执行,只有回调block代码块的时候,才会执行。
ViewController.h

import <UIKit/UIKit.h>

@interface ViewController : UIViewController
@property(nonatomic,copy) void(^myBlock)(int);//1.声明一个block变量,直接将block声明成一个属性变量更方便实用。
@end
ViewController.m

import "ViewController.h"

import "NewViewController.h"

@interface ViewController ()
@end
@implementation ViewController

import <UIKit/UIKit.h>

import "ViewController.h"

@interface NewViewController : UIViewController
@property(nonatomic,copy)void(^block)(int a);
@end
NewViewController.m

import "NewViewController.h"

@interface NewViewController ()
@end
@implementation NewViewController

import <UIKit/UIKit.h>

typedef int(^FinishedBlock)(int); //此处FinishedBlock不是block变量,而是一种类型,即FinishedBlock类型。
@interface ViewController : UIViewController
{
  FinishedBlock block1; //typedef声明一个FinishedBlock后,就可以用该类型定义block变量。
}
@property(nonatomic,copy) FinishedBlock block2;
@end

import "ViewController.h"

@interface ViewController ()
@end
@implementation ViewController

2015-07-15 20:57:22.226 Test[618:21849] 30

2015-07-15 20:57:22.227 Test[618:21849] 10

2015-07-15 20:57:22.227 Test[618:21849] 20
** 三.block作为参数传递**

import <UIKit/UIKit.h>

typedef int(^FinishedBlock)(int);

@interface ViewController : UIViewController

@end

import "ViewController.h"

@interface ViewController ()
@end
@implementation ViewController

上一篇 下一篇

猜你喜欢

热点阅读