如何从TextField获得实时更改

问题描述 投票:0回答:1

我正在使用标签和IB方法操作从TextField获取值。在编辑后单击表格视图的正文时,可以获取值。

cell.component.tag = indexPath.row

cell.component.addTarget(self, action: #selector(handleTextViewOther(_:)), for: .editingDidEnd)

然后我有了objc方法

 @objc func handleTextViewOther(_ sender: UITextField){

        let indexPath : IndexPath = IndexPath(item: sender.tag, section: 0)

        let cell = tableView.cellForRow(at: indexPath) as! OnlyTextCell
        if let key = cell.displayLabel.text, let val = cell.component.text{
            print ("sender \(key) Field value = \(val)")
        }
    }

按预期工作:在文本字段上键入内容后,如果按外部,则得到正确的值

无效:如果我继续编辑并且我的焦点在文本字段上,并且单击“提交”按钮,则不会得到最新的文本。在“ for”部分,我尝试了“所有触摸事件”到“ didEndEditing”的多种组合,但没有运气

我已经研究,我认为我需要textDidChangeNotification

但是在#selector(handleTextViewOther(_:)), for: .editingDidEnd中,是:不包含我要寻找的东西。怎么取悦?

或者还有我能做的其他事情吗?

ios swift events delegates uitextfield
1个回答
0
投票

for: .editingChanged

对不起,我解决了!

© www.soinside.com 2019 - 2024. All rights reserved.