键入时在 BackSpace 上缩小 UITextField

Narrowing Down UITextField on BackSpace while typing

使用 Storyboard,我设置了一个 UITextField 和两个静态 UILabel。我设置了约束,以便静态标签随着用户在 TextField 中键入内容而展开。

       [Label1] [TextField] [Label2]

[Label1] [TextFieldIsGettingFilled] [Label2]

到目前为止一切都很好。随着用户输入,TextField 变宽。但是,如果用户使用退格键(删除字符),TextField 不会变窄。所以它变成了:

[Label1] [TextField         ] [Label2] 

在用户仍在键入时检测退格键并相应地缩小 TextFields 宽度的方法是什么?

编辑

我做了一个例子并且这个有效(根据文本增加和减少):

func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
    textField.invalidateIntrinsicContentSize()
    return true
}

来源:Resize a UITextField while typing (by using Autolayout)