- UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(buttonX, buttonY, width, height)];
- //给button添加点击事件,action参数中写入事件执行方法
- [button addTarget:self action:@selector(action:) forControlEvents:UIControlEventTouchUpInside];
- //在button的tag中添加你需要传递的参数,目前资料中只有这种方法
- [button setTag:100];
-
- //要是我们有其他字符串,mode对象咋办?
- //通过 OC 运行时方法 objc_setAssociatedObject 给对象动态绑定属性
-
objc_setAssociatedObject(button,key, val,OBJC_ASSOCIATION_RETAIN_NONATOMIC);
-
- //下面是action方法
- -(void)action:(id)sender{
- //这个sender其实就是UIButton,因此通过sender.tag就可以拿到刚才的参数
- int i = [sender tag];
-
- //通过
objc_getAssociatedObject
获取绑定属性的值
- //通过
-
- NSObject *val=
objc_getAssociatedObject(button,key);
- }
更多特性请百度
objc_getAssociatedObject