【发布时间】:2017-05-22 19:22:40
【问题描述】:
我有一个自定义表格视图单元格,它是我表格视图中的第一个单元格,其中我有一个文本字段,我正在尝试使其功能类似于搜索功能。 我希望表格视图其余部分中的数据随着用户键入而更新。我通过 .addTarget 设置了搜索单元格的 textField 以触发 EditingChanged,因此每次用户在 textField 中键入新内容时,它都会显示更新的结果。但似乎调用 self.tableView.reloadData() 会触发 EditingDidEnd 并在每个字母之后隐藏键盘。
通过搜索单元的 UITextField 的 addTarget,我有一个函数 searchBarEditingChanged(searchTextField: UITextField) 在 self.tableView.reloadData() 之后我调用 searchTextField.becomeFirstResponder()
我该如何解决这个问题?
我之前考虑过使用搜索控制器,但我不喜欢你必须下拉才能使搜索栏可见
编辑:
试着用这个代替
let sectionsToReload = IndexSet(1...sectionHeaders.count)
self.tableView.reloadSections(sectionsToReload, with: .none)
但它在 reloadSections 时崩溃:2017-05-22 15:37:21.600257 MYAPP[565:89501] *** Assertion failure in -[UITableView _endCellAnimationsWithContext:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3600.6.22/UITableView.m:1284
【问题讨论】:
标签: swift uitableview swift3