UIScrollView上的UIButton无法正常工作

时间:2010-04-07 05:24:59

标签: iphone-sdk-3.0

UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 180, 180)];
myLabel.backgroundColor = [UIColor greenColor];
[self.view addSubview:myLabel];

UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[self addTarget:self action:@selector(show)  forControlEvents:UIControlEventTouchDown];
myButton.frame = CGRectMake(80.0, 120.0, 30, 30);
myButton.showsTouchWhenHighlighted = YES;
[self addSubview:myButton];

以这种方式按钮工作(调用show:),但使用[myLabel addSubview:myButton];按钮不起作用。不知道为什么?

---------------- EDIT&解 - - - - - - 谢谢@KennyTM

UILabel默认不处理任何事件。您需要将标签的userInteractionEnabled属性设置为YES

另外,最好不要在UILabel的顶部添加UIButton。

1 个答案:

答案 0 :(得分:1)

UILabel默认不处理任何事件。您需要将标签的userInteractionEnabled property设置为YES。

按钮不应该是标签的子视图,这是不合逻辑的。使它们都成为UIView的子视图。