iOS Textfield 自动完成
这是一个纯 Swift 编写的 iOS 自动完成库,用于 iOS 的 UITextField。
安装
您可以使用 CocoaPods 进行安装
pod 'CCAutocomplete'
使用方法
AutoCompleteDelegate协议
包含 UITextField 的 ViewController 应遵守 AutoCompleteDelegate
协议。该协议包含以下方法
必选方法
func autoCompleteTextField() -> UITextField
: 返回我们希望应用自动完成的UITextFieldfunc autoCompleteThreshold(textField: UITextField) -> Int
: 返回开始显示自动完成的最小字符数func autoCompleteItemsForSearchTerm(term: String) -> [AutocompletableOption]
: 返回符合AutocompletableOption
的对象数组,将在自动完成列表中显示func autoCompleteHeight() -> CGFloat
: 显示自动完成项的最大高度func didSelectItem(item: AutocompletableOption) -> Void
: 在我们点击自动完成项时被调用
可选方法
func nibForAutoCompleteCell() -> UINib
: 创建包含自定义UITableViewCell的nib文件,并从该方法返回它以自定义自动完成单元格func heightForCells() -> CGFloat
: 自定义自动完成单元格的高度func getCellDataAssigner() -> ((UITableViewCell, AutocompletableOption) -> Void)
: 返回一个方法,指示自动完成如何将符合AutocompletableOption
的对象分配给UITableViewCell
的子类func animationForInsertion() -> UITableView.RowAnimation
: 返回用于在自动完成中插入新项目时使用的动画func animationForDeletion() -> UITableView.RowAnimation
: 返回用于从自动完成中删除现有项目时使用的动画
AutocompletableOption
这是Autocomplete UITableViewCell数据源使用的协议。如果您想自定义自动完成单元格以包含更多数据项,您需要创建一个符合此协议的对象。
待办事项
计划为自动完成添加多个部分的支持。