作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我在 tableView
中启动“编辑模式”时,我能够 (1) 编辑单元格中的 textField
以及 (2) 移动行。
为了编辑 textField
,我在 textFieldDidEndEditing
中实现了代码,并使用 moveRowAt IndexPath
移动行。
它们都独立工作得很好,但如果一起使用,我无法在触发 moveRowAt IndexPath
之前保存我的 textField
内容...
问题是当我这样做时:
a) 开始编辑。
b) 点击 textField
并写入内容。
c) 在点击另一个 textField
之前移动一行。
-> 该行正在移动,但 textField
未保存。
在开始移动行之前如何保存textField
?
最佳答案
您必须维护文本字段值的记录,因为如果您移动行,那么您的行将被移动,并且据此您将交换您的数据源(数组),我也假设!因此,您必须维护文本字段的文本记录。您可以实现文本字段的委托(delegate)方法“shouldchangecharacter”,这样每当您键入时,您都会在该方法中获得一个字符串,并且每次都会使用相应的索引路径存储最新的字符串,并在移动行后将该文本从“cellforrow”设置为文本字段!
关于ios - Swift 3 - 如何在 moveRowAt IndexPath 之前触发 textFieldDidEndEditing?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43283402/
我是一名优秀的程序员,十分优秀!