关于UIButton和UILabel

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

写项目时发现了一个很怪的现象

把UIButton添加到UILabel上时,UIButton的点击事件无响应


//  Created by 王璐 on 2023/4/1.
//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    UILabel* label = [[UILabel alloc] init];
    label.frame = CGRectMake(100, 100, 300, 300);
    label.text = @"这是一个label";
    [self.view addSubview:label];
    label.backgroundColor = [UIColor yellowColor];
    
    UIButton* button = [UIButton buttonWithType:UIButtonTypeSystem];
    button.frame = CGRectMake(100, 100, 200, 100);
    [button setTitle:@"这是一个button" forState:UIControlStateNormal];
    [button addTarget:self action:@selector(pressButton:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:button];
    button.backgroundColor = [UIColor orangeColor];
    
    // Do any additional setup after loading the view.
}
- (void)pressButton:(UIButton*)button {
    button.backgroundColor = [UIColor redColor];
}

@end

请添加图片描述
当我们把这个button加到view上时,button还能响应

//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    UILabel* label = [[UILabel alloc] init];
    label.frame = CGRectMake(100, 100, 300, 300);
    label.text = @"这是一个label";
    [self.view addSubview:label];
    label.backgroundColor = [UIColor yellowColor];
    
    UIButton* button = [UIButton buttonWithType:UIButtonTypeSystem];
    button.frame = CGRectMake(100, 100, 200, 100);
    [button setTitle:@"这是一个button" forState:UIControlStateNormal];
    [button addTarget:self action:@selector(pressButton:) forControlEvents:UIControlEventTouchUpInside];
    [label addSubview:button];
    button.backgroundColor = [UIColor orangeColor];
    
    // Do any additional setup after loading the view.
}
- (void)pressButton:(UIButton*)button {
    button.backgroundColor = [UIColor redColor];
}

@end

请添加图片描述
当我把这个button添加到label上时,button就不能响应了
查了很多东西,好像没人把button添加到label上😂😂😂

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山河丘壑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值