iOS 原生的 UIButton 点击事件是不允许带多参数的,唯一的一个参数就是默认UIButton本身 那么我们该怎么实现传递多个参数的点击事件呢?
Posted 行走在路上的独孤客!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 原生的 UIButton 点击事件是不允许带多参数的,唯一的一个参数就是默认UIButton本身 那么我们该怎么实现传递多个参数的点击事件呢?相关的知识,希望对你有一定的参考价值。
- UIButton *btn = // create the button
- objc_setAssociatedObject(btn, "firstObject", someObject, OBJC_ASSOCIATION_RETAIN_NONATOMIC); //实际上就是KVC
- objc_setAssociatedObject(btn, "secondObject", otherObject, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
- [btn addTarget:self action:@selector(click:) forControlEvents:UIControlEventTouchUpInside];
- - (void)click:(UIButton *)sender
- {
- id first = objc_getAssociatedObject(btn, "firstObject"); //取参
- id second = objc_setAssociatedObject(btn, "secondObject");
- // etc.
- }
以上是关于iOS 原生的 UIButton 点击事件是不允许带多参数的,唯一的一个参数就是默认UIButton本身 那么我们该怎么实现传递多个参数的点击事件呢?的主要内容,如果未能解决你的问题,请参考以下文章