UIButton点击无响应

时间:2012-09-01 16:37:14

标签: objective-c ios cocoa-touch

我添加了一个新的UIButton

    UIButton *newButton = [UIButton buttonWithType:UIButtonTypeCustom];
    [newButton setFrame:CGRectMake(x, y, width, height)];
    [newButton setTitle:@"" forState:UIControlStateNormal];
    [newButton setTag:x+INDEX_OFFSET];
    [newButton setBackgroundImage:image forState:UIControlStateNormal];
    [newButton addTarget:self action:@selector(buttonPressed) forControlEvents:UIControlEventTouchUpInside];

    [self addSubview:newButton];
    [self bringSubviewToFront:newButton];

我可以在屏幕上看到它,但它没有响应轻击手势。它应该调用“buttonPressed”。任何帮助都是超级的!

2 个答案:

答案 0 :(得分:9)

可能的问题之一是您在超视图的框架位置添加按钮。只是为了检查它,尝试在其超视图边界中将clipToBounds属性设置为YES,然后运行应用程序。如果你没有看到按钮,则意味着你将按钮位置设置在最高位置,这就是为什么它没有响应触摸。

答案 1 :(得分:1)

另一个可能的问题是,如果您将UIButton作为subview添加到UIImageView (您不应该这样做,但它有效) 。在这种情况下,您可以将其添加到UIView或将UIImageView的{​​{1}}属性设置为userInteractionEnabled