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
相关推荐
Naisu Xu4 分钟前
Mac上安装Homebrew、Git、Python等环境记录
git·python·macos·终端·brew
largecode10 分钟前
企业名称能在来电显示吗?号码显示公司名服务打通多终端展示
android·xml·ios·iphone·xcode·webview·phonegap
MonkeyKing29 分钟前
iOS Core Animation 渲染架构详解:Render Server 与 Commit Transaction
ios
MonkeyKing34 分钟前
iOS Auto Layout 原理详解:Cassowary 算法、性能问题与优化
ios
程序猿进阶38 分钟前
OpenClaw Mac 安装教程
java·macos·ai·架构·agent·openclaw
运维之美@1 小时前
Nginx性能优化(二):HTTP/2升级指南,让你的网站开启极速模式
ios·iphone
Rudon滨海渔村1 小时前
macOS启动转换助理出现“不能下载该软件,因为网络出现问题 ”
网络·macos
恋猫de小郭2 小时前
Flutter GenUI 0.9 和 A2UI 0.9 发布,全动动态 UI 支持,AI 在 App 里直出界面
android·flutter·ios
一个人旅程~2 小时前
mac-bootcamp的windows系统因升级intel驱动更新等升级驱动导致的功能异常故障?
windows·经验分享·macos·电脑
sakiko_2 小时前
Swift/UIkit学习笔记27-模块管理,发送位置信息
前端·笔记·学习·ios·swift·uikit