oc UIButton绑定事件并传值

来源:互联网 发布:气动仪表编程 编辑:程序博客网 时间:2024/04/28 22:45
  1. UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(buttonX, buttonY, width, height)];  
  2. //给button添加点击事件,action参数中写入事件执行方法  
  3. [button addTarget:self action:@selector(action:) forControlEvents:UIControlEventTouchUpInside];  
  4. //在button的tag中添加你需要传递的参数,目前资料中只有这种方法  
  5. [button setTag:100];  

  6. //要是我们有其他字符串,mode对象咋办?
  7. //通过 OC 运行时方法 objc_setAssociatedObject 给对象动态绑定属性
  8. objc_setAssociatedObject(button,key, val,OBJC_ASSOCIATION_RETAIN_NONATOMIC);


  9. //下面是action方法  
  10. -(void)action:(id)sender{  
  11. //这个sender其实就是UIButton,因此通过sender.tag就可以拿到刚才的参数  
  12.     int i = [sender tag];  
    1. //通过

      objc_getAssociatedObject

      获取绑定属性的值

  13.     NSObject *val= 

    objc_getAssociatedObject(button,key);

  14. }  




更多特性请百度 

objc_getAssociatedObject

0 0
原创粉丝点击