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
相关推荐
皇上o_O5 小时前
深入理解 Swift Concurrency:从 async/await 到隔离域
ios
CocoaKier7 小时前
1月12日最新用户隐私保护政策出炉,政策解读
ios
Mr -老鬼10 小时前
移动端跨平台适配技术框架:从发展到展望
android·ios·小程序·uni-app
雪域迷影11 小时前
MacOS中安装并配置Redis
redis·macos·策略模式
猫头虎12 小时前
Claude Code 2026 年1月9日迎来大更新:Agent 能力增强(2.1.0 详解 + 升级指南)
ide·人工智能·macos·langchain·编辑器·aigc·ai编程
小锋学长生活大爆炸12 小时前
【踩坑】MacOS26开启软件的麦克风权限,如腾讯会议
macos·会议·腾讯会议·安全模式·权限·踩坑·麦克风
有个人神神叨叨13 小时前
AITalk:从零到一打造 macOS 系统级语音输入引擎
macos·策略模式
系'辞16 小时前
【obsidian指南】配置obsidian git插件,实现obsidian数据定时同步到github仓库(Mac电脑)
macos·github·agent·知识库
tiantian_cool1 天前
Claude Code 四大核心技能使用指南
ios
冰淇淋真好吃1 天前
iOS实现 WKWebView 长截图的优雅方案
ios