UIButton在循环中创建不可点击

时间:2012-01-05 16:55:06

标签: iphone ios xcode uibutton

这是我的问题:

我在循环中向滚动视图添加了几个按钮:

for (int i = 0; i < [allEventArray count]; i++) {

        UIButton *eventButton = [UIButton buttonWithType:UIButtonTypeCustom];
        eventButton.tag =  i + 10;

        UIImage *normalImage = [UIImage imageNamed:@"rosterButton.png"];
        normalImage = [normalImage 
                      stretchableImageWithLeftCapWidth:normalImage.size.width/2 
                      topCapHeight:normalImage.size.height/2];
        [eventButton setBackgroundImage:normalImage 
                      forState:UIControlStateNormal];

        [eventButton addTarget:self action:@selector(gotoThisAirport) 
                      forControlEvents:UIControlEventTouchUpInside];

        [drawRosterView addSubview:eventButton];
}

我稍后通过打开tag属性来设置帧大小和其他内容。 所有按钮都显示为广告。 问题是只有视图中的第一个按钮响应点击。其他人只是坐在那里冷静,什么都不做。怎么会这样?它让我绝对疯狂!

请帮忙!

1 个答案:

答案 0 :(得分:2)

听起来你的UIButton并没有完全进入你的UIView。

尝试仅将UIButton添加到UIView,并将UIView的背景颜色设置为[UIColor greenColor]。然后,您应该看看UIButton是否部分在UIView之外。

另外,如果你在 - (void)中添加一个NSLog(“click”)调用,touchesBegan :( NSSet *)触及withEvent:(UIEvent *)事件;如果UIView检测到触摸,你可以点击屏幕上的任意位置并获得反馈。