7

我有一个UIButton,我正在向UIButton其中添加一个子视图UILabel。当我点击UILabel按钮的操作时不会触发。是否有一个简单的修复方法,以便在点击UIButton时将触摸事件传递给UILabel
我正在考虑添加一个手势识别器UILabel,然后触发 的动作UIButton,不确定是否有更简单的方法。

4

2 回答 2

6

您可能只是禁用用户对您的标签的交互。

_yourLabel.userInteractionEnabled = NO;
于 2012-09-05T22:44:34.323 回答
4

尝试这个,

- (void)viewDidLoad
{
    [super viewDidLoad];
    UIButton *firstButton=[UIButton buttonWithType:UIButtonTypeRoundedRect];
    [firstButton setTitle:@"first" forState:UIControlStateNormal];
    firstButton.frame=CGRectMake(40, 70, 80, 80);
    [firstButton addTarget:self action:@selector(firstButtonClicked) forControlEvents: UIControlEventTouchUpInside];
    [self.view addSubview:firstButton];

    UILabel *label=[[UILabel alloc]initWithFrame:CGRectMake(0, 0, 80, 80)];
    label.text=@"hai";
    label.backgroundColor=[UIColor redColor];
    [firstButton addSubview:label];

}

-(void)firstButtonClicked {
    NSLog(@"first");
}
于 2012-09-06T04:25:43.230 回答