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
相关推荐
高兴就好(石1 小时前
Mac使用llama.cpp
macos·llama
WaywardOne7 小时前
一.iOS Objective-C Runtime 原理
前端·ios
WaywardOne7 小时前
二.iOS内存管理
前端·ios·面试
星辰即远方7 小时前
UITableView操作拓展
macos·ios·xcode
刘某某.9 小时前
macOS 终端美化完整教程(Ghostty + Zsh + Starship Catppuccin Powerline)
macos
咦呀9 小时前
macOS 上 SVN 报错 "SQLite 编译为 X.XX,运行时为 X.XX" 的完整解决方案
macos
秋雨梧桐叶落莳13 小时前
iOS——Masonry约束内容整理
开发语言·学习·macos·ios·objective-c·cocoa
pop_xiaoli13 小时前
【iOS】类和分类的加载
macos·ios·objective-c·cocoa
流年似水~13 小时前
iOS 开发进阶之路:从能跑到能维护
人工智能·程序人生·ios·语言模型
国科安芯13 小时前
空间辐射环境下抗辐射 MCU 可靠性机理及航空安全应用研究综述
单片机·嵌入式硬件·macos·无人机·cocos2d·risc-v