swift - UITextField 开始编辑时按钮大小为 "clear'

标签 swift uitextfield

我有一个带有清晰按钮的 UITextField,并将其放置在具有前导对齐的垂直堆栈 View 中。当编辑开始时,字段的大小不考虑清除按钮,因此文本向左滚动。一旦添加任何字符,该字段就会纠正其大小。我不想修复字段宽度,因为我喜欢这种行为 - 当文本末尾始终有清除按钮时。

下面的函数会更正大小,但只有在文本字段更改后才会出现清除按钮:

func textFieldDidBeginEditing(_ textField: UITextField) {

    UIView.animate(withDuration: 0.4) {
        textField.sizeToFit()
    }
}

知道如何纠正这个问题吗?预先感谢您。

最佳答案

func textFieldDidBeginEditing(_ textField: UITextField) {
    textField.invalidateIntrinsicContentSize()
}

关于swift - UITextField 开始编辑时按钮大小为 "clear',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49039252/

相关文章:

swift - 任何想法如何为 swift 3 安装 'ReachabilitySwift'?

ios - 利用外部加载 Nib 中的 IBOutlets/IBActions

ios - 我正在尝试将命令从 SKScene(SpriteKit) 传递到 SCNScene(SceneKit)

iphone - 如何更改键盘完成按钮的行为?

iphone - 如何仅使用 UITextField 制作 iOS 计算器

ios - Algolia 搜索多个索引 IOS

ios - UITableViewCells 内的 UITextfield - 关闭键盘

ios UIPickerView 滚动太快

ios - 一页上有多个 UITextFields 显示日期,但只有一个 UITextFields 显示从两个 DatePickers 中选择的日期

ios - 使用视觉布局约束在 Swift 中创建自定义按钮