objective-c - iOS 自定义UIPickerView的view为一个button,button无法点击

 huangyong黄勇_513 发布于 2022-10-28 20:39

如题,今天遇到一个很奇怪的问题,我直接在故事版里拖了一个pickerView,然后实现代理方法

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
    return 2;
}

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
    return 10;
}

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
    UIButton *button = [[UIButton alloc] init];
    [button addTarget:self action:@selector(btnclick:) forControlEvents:UIControlEventTouchUpInside];
    button.tag = row;
    [button setTitle:[NSString stringWithFormat:@"%@-%@",@(component),@(row)] forState:UIControlStateNormal];
    button.backgroundColor = [UIColor redColor];
    [button setTintColor:[UIColor redColor]];
    return button;
}

- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component {
    return 40;
}

- (void)btnclick:(UIButton *)sender {
    NSLog(@"%ld",(long)sender.tag);
}

就上面这样,直接定义pickerView每一行都是一个button,这样是可以显示出来,但是根本没法响应到按钮的点击事件,也不崩溃不报错,不知道是什么原因,求解

2 个回答
  • 你好 ,我也遇到了同一个问题,你是怎么解决的啊

    2022-10-29 22:57 回答
  • 我写过一篇关于UIButton无法点击的分析博客,你可以看看,希望对你有帮助:http://www.hcios.com/archives/1066

    2022-10-29 22:58 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有