国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

二十二, iOS UIButton的Block的使用

2019-11-06 09:34:28
字體:
來源:轉載
供稿:網友

一,首先對button定義block

#import <UIKit/UIKit.h>#import <objc/runtime.h>typedef void (^ActionBlock)();//聲明block@interface UIButton (Block)@PRoperty (readonly) NSMutableDictionary *event;//事件- (void) handleControlEvent:(UIControlEvents)controlEvent withBlock:(ActionBlock)action;//方法@end

二,.m文件代碼如下#import "UIButton+Block.h"@implementation UIButton (Block)static char overviewKey;@dynamic event;- (void)handleControlEvent:(UIControlEvents)event withBlock:(ActionBlock)block {    if (block) {        objc_removeAssociatedObjects(self);                objc_setAssociatedObject(self, &overviewKey, block, OBJC_ASSOCIATION_COPY_NONATOMIC);        [self addTarget:self action:@selector(callActionBlock:) forControlEvents:event];    }}- (void)callActionBlock:(id)sender {    ActionBlock block = (ActionBlock)objc_getAssociatedObject(self, &overviewKey);    if (block) {        block();    }}三,導入文件#import "UIButton+Block.h",和調用

UIButton *button = [[UIButton alloc]initWithFrame:CGRectMake(10, 100, self.view.frame.size.width-20,60 )];    [button setTitle:@"block" forState:UIControlStateNormal];    button.backgroundColor =[UIColor redColor];    [button handleControlEvent:UIControlEventTouchUpInside withBlock:^{        NSLog(@"button block");    }];    [self.view addSubview:button];


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宣恩县| 虹口区| 泗洪县| 建瓯市| 越西县| 沈阳市| 亚东县| 宁夏| 肇东市| 巨鹿县| 双辽市| 教育| 九江县| 乐业县| 连江县| 扎赉特旗| 安丘市| 湾仔区| 惠安县| 英吉沙县| 萨嘎县| 河东区| 独山县| 含山县| 三都| 金坛市| 郯城县| 阿瓦提县| 扶沟县| 东兴市| 聂拉木县| 保康县| 天门市| 宜春市| 上虞市| 剑川县| 通山县| 松潘县| 双江| 桐城市| 双鸭山市|