国产探花免费观看_亚洲丰满少妇自慰呻吟_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];


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 涿州市| 松潘县| 辰溪县| 浑源县| 如东县| 文山县| 祁门县| 昌平区| 浦东新区| 调兵山市| 盱眙县| 榆树市| 石棉县| 博兴县| 泰兴市| 察哈| 中宁县| 横山县| 石台县| 工布江达县| 瓦房店市| 会同县| 乾安县| 华阴市| 玛纳斯县| 镇原县| 丰台区| 滦南县| 富裕县| 济阳县| 温州市| 寿阳县| 静海县| 隆化县| 阿拉尔市| 怀远县| 江源县| 横山县| 巴马| 康定县| 信丰县|