gpt4 book ai didi

swift - 在 UITableView 中为不同的 UITextField 设置 inputView

转载 作者:行者123 更新时间:2023-11-30 13:26:39 28 4
gpt4 key购买 nike

我在自定义单元格中有 UITableViewUITextField

对于UITextField,我使用自定义inputView:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

let cell = tableView.dequeueReusableCellWithIdentifier(reuseIdentifier, forIndexPath: indexPath) as! Item

cell.price.text = ""
cell.price.delegate = self

return cell
}

func textFieldDidBeginEditing(textField: UITextField) {
textField.inputView = keyboardView
itemPrice = textField
}

func numberWasTapped(number: String!) {
itemPrice.insertText(number!)
}

使用委托(delegate)方法:

@IBAction func keyTaped(sender: UIButton) {
switch sender.tag {
case 112:
if !isCommaWasPressed {
isCommaWasPressed = true
sender.enabled = false
self.delegate?.numberWasTapped(sender.titleLabel!.text)
}
break
default:
self.delegate?.numberWasTapped(sender.titleLabel!.text)
}

我的自定义inputView是计算器键盘,具有Keyboard类中的所有逻辑:它控制是否按下逗号以及在逗号后输入多少个数字。例如,如果按下逗号,则 Keyboard 类中的 commaButton.enabled = false

当我切换到另一个 UITextField 时,我不知道如何在 Keyboard 类中设置 commaButton.enabled = true

我尝试了textField.reloadInputViews()textFieldDidBeginEditing(_:) 方法,但它不起作用。

我认为,我应该从 UITextField 获取信息并将其传递给键盘的类逻辑。但我不知道该怎么做。

最佳答案

我找到了解决方案。我将键盘逻辑移至主 ViewController,无需将 textField 数据传递给 Keyboard 类。

关于swift - 在 UITableView 中为不同的 UITextField 设置 inputView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37099980/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com