响应UIScrollView中以编程方式生成的自定义UIButtons的触摸

时间:2013-04-25 05:43:32

标签: iphone ios objective-c xcode ios6

我有一个UIScrollView,其中包含以编程方式生成的自定义UIButtons。 此代码通过循环执行每次迭代,通常为7次。

[cardButton
      addTarget:self
      action:@selector(buttonPressed:)
      forControlEvents:UIControlEventTouchUpInside];
[cardButton setTag:i + 100];
[self.scrollView addSubview:cardButton];

在其他地方我有这个功能:

- (IBAction) buttonPressed:(id)sender
{
    UIButton *button = (UIButton *)sender;
    NSLog(@"%d", [button tag]);
}

如何将两者联系起来?我的按钮实际上将我需要的所有信息存储在其标签内,所以我真的需要检测它被点击的时间,以便我可以回复。

1 个答案:

答案 0 :(得分:1)

您已使用此行链接两个

[cardButton
      addTarget:self
      action:@selector(buttonPressed:)
      forControlEvents:UIControlEventTouchUpInside];

发件人正在返回您按下的按钮实例。所以

- (IBAction) buttonPressed:(id)sender
{
    UIButton *button = (UIButton *)sender;
    NSLog(@"%d", [button tag]);
    switch (button.tag) {
        case 1:
            //Action for button with tag 1
            break;
        case 2:
            //Action for button with tag 2
            break;

        default:
            break;
    }


}