iOS block处理button的点击事件

一. 代码
  • .h文件内容

    #import <UIKit/UIKit.h>

    复制代码
      typedef void (^ButtonBlock)(UIButton *);
    
      @interface BlockButton : UIButton
    
      - (void)addTapBlock:(ButtonBlock)block;
    
      @end
  • .m文件内容

    #import "BlockButton.h"

    复制代码
      @interface BlockButton()
    
      @property(nonatomic,copy) ButtonBlock block;
    
      @end
    
      @implementation BlockButton
    
      - (void)addTapBlock:(ButtonBlock)block
      {
          _block = block;
          [self addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
      }
    
      - (void)buttonAction:(UIButton *)button
      {
          _block(button);
      }
    
      @end
相关推荐
我是Superman丶8 小时前
Arduino IDE 安装教程:Windows/macOS/Linux 开发环境搭建
ide·windows·macos
k4m7v2pz9 小时前
Mac 上用 brew 安装 UTM 与 QEMU(代理配置全记录)
macos
麒麟马12 小时前
Swift 扩展归纳---Array (一)
ios·swift
千码君201613 小时前
提词器项目V1.0功能分析
ide·macos·xcode
2501_9151063213 小时前
Swift 4开发环境设置教程:xCode安装与Playground入门
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
欢迎来到祖安!13 小时前
企业微信 iPad 协议私有化方案:毫秒级事件推送与高并发承载实践
ios·企业微信·ipad
2501_9160074714 小时前
使用Apple Dashboards显示和自定iOS应用性能指标与数据可视化指南
android·ios·小程序·https·uni-app·iphone·webview
承渊政道15 小时前
星空组网真实体验:Mac远程访问Ubuntu,SSH与HTTP全流程验证
ubuntu·http·macos·ssh·服务器管理·星空组网
用户380341658829715 小时前
YUV→RGB 的颜色范围与矩阵:画面发灰的真凶
ios
深念Y16 小时前
黑苹果P400-直通显示折腾全记录-20260907
macos·ios·系统·黑苹果·苹果·英伟达·p400