gpt4 book ai didi

swift - 如何在文本字段激活时触发操作

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

我有一个由自定义单元格组成的 CollectionViewController。此时我的自定义单元格仅由 UITextFields 组成。当我在其中一个文本字段内单击以开始输入时,我想在单元格上触发动画。出于某种原因,我无法弄清楚为什么当我在 textField 中单击时我的动画没有被触发。当我遵守 UItextFieldDelegate 协议(protocol)并尝试通过 DidBeginEditing 方法触发操作时,它不起作用。当我尝试通过 UIControlEvents.touchDown 触发动画时,它也不起作用。

@objc func animateCell(textField: UITextField) {  
print("TextField active")
let cell = collectionView.cellForItem(at: indexPath)
UIView.animate(withDuration: 0.5, delay: 0, options: .allowAnimatedContent, animations: ({
cell?.frame = collectionView.bounds
collectionView.isScrollEnabled = false
}), completion: nil)
}

最佳答案

代替 textFieldDidBeginEditingtry using textFieldShouldBeginEditing: (并确保从该方法返回 true,因为您希望允许用户键入 :-)。

此外,由于您说该方法只有在您单击第一个选定文本字段之外的其他文本字段后才会触发,所以在显示 Collection View 时手动为最初选定的文本字段触发动画。

关于swift - 如何在文本字段激活时触发操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53787621/

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