【问题标题】:Tapping on TableViewCell to show UIPickerView点击 TableViewCell 以显示 UIPickerView
【发布时间】:2020-06-19 14:09:36
【问题描述】:

我有一个自定义的 TableViewCell 和 UIPickerView 作为单元格文本视图的 inputView:

class PickerTableViewCell: UITableViewCell {

    let picker = UIPickerView()

    let pickerOptions: [String] = []

    lazy var pickerTextField: UITextFieldWithNoCursor = {
       let pickerTextField = UITextFieldWithNoCursor()
       pickerTextField.inputView = picker
       ...
       return pickerTextField
    }()


    override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
        super.init(style: style, reuseIdentifier: reuseIdentifier)

        containerStackView.addArrangedSubview(pickerTextField)
    }
}

问题在于选择器。它只能通过点击 textview 来工作,但如果我点击单元格的其他部分,它将什么也不做。有没有办法通过点击整个单元格而不只是它的 textview 来显示 pickerView?

【问题讨论】:

    标签: swift uitableview uikit uipickerview


    【解决方案1】:

    你可以在你的单元格中添加点击手势来做到这一点

    override func awakeFromNib() {
               super.awakeFromNib()
    
               let tapGesture = UITapGestureRecognizer(target: self, action: #selector(tapEdit))
               addGestureRecognizer(tapGesture)
    
    
           }
    
           @objc func tapEdit() {
    
            pickerTextField.becomeFirstResponder()
    
           }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多