1.屬性用法
^ 后面就是block的名稱,必須是copy
#import <UIKit/UIKit.h>
#import <SCCUserInterface/SCCTableViewCellProtocol.h>
#import "CNNOrderButtonView.h"
@interface CNNCarOrderCell : UITableViewCell <SCCTableViewCellProtocol>
+ (CGFloat)cellHeightWithItem:(id)item width:(CGFloat)width;
@property (nonatomic, copy) void (^buttonTappedBlock)(NSInteger index, CNNOrderButtonActionType type);
@end
2.類外面申明,成為一種數(shù)據(jù)類型
(^CNNCloseLocationBlock) CNNCloseLocationBlock成為新的數(shù)據(jù)類型,即函數(shù)指針
#import <Foundation/Foundation.h>
typedef void (^CNNCloseLocationBlock)(NSDictionary *dict);
@interface CNNCloseCarLocationManager : NSObject
@property (nonatomic,copy) CNNCloseLocationBlock locationBlock;
@property (nonatomic,copy) void(^location)(NSError *error,NSDictionary*geolocation);
+ (instancetype)manager NS_SWIFT_NAME(sharedInstance());
- (void)startUpdatingLocation;
- (void)setGetLocationBlock:(void(^)(NSDictionary * dic))block;
- (void)setGetGeoLocationBlock:(void(^)(NSError *error,NSDictionary*geolocation))block;
@end
3.方法中的參數(shù)block用法
(^block xx) block名稱從括號(hào)中寫在外面成為參數(shù)
- (void)setGetLocationBlock:(void(^)(NSDictionary * dic))block;
總結(jié): 一般情況(^)后面都會(huì)跟block名稱,參數(shù)除外