GMSAutocompleteTableDataSource 类参考文档

GMSAutocompleteTableDataSource 类参考文档

概览

GMSAutocompleteTableDataSource 提供了一个接口,通过实现 UITableViewDataSource 和 UITableViewDelegate 协议,提供地点自动补全预测结果来填充 UITableView。

GMSAutocompleteTableDataSource 旨在用作 UISearchDisplayController 的数据源。

注意
UISearchDisplayController 从 iOS 8 开始便被废弃了。现在建议将 UISearchController 与 GMSAutocompleteResultsViewController 搭配使用,以便使用 iOS 搜索界面显示自动补全结果。

GMSAutocompleteTableDataSource 的实例设置为 UISearchDisplayController 的 searchResultsDataSource 和 searchResultsDelegate 属性。在您的 should 重新加载 TableForSearchString 实现中,使用当前的搜索字符串调用 sourceTextHasChanged。

使用 GMSAutocompleteTableDataSourceDelegate 委托协议,在从列表中选择地点时收到通知。由于自动补全预测结果是异步加载的,因此必须实现 doUpdateAutocompletePredictions 并在 UISearchDisplayController 的表视图中调用重新加载数据。

公开成员函数

(实例类型)- init
 初始化数据源。
(void) - sourceTextHasChanged:
 通知数据源要自动填充的源文本已更改。
(void) - clearResults
 清除所有预测。

属性

IBOutlet ID
< AutocompleteAutocompleteTableDataSourceDelegate >
委托
 委托系统在所选地点或所选地点取消时收到通知。
GMSAutocompleteFilterautocompleteFilter
 应用到自动补全建议的过滤条件(可以是 nil)。
UIColor * tableCellBackgroundColor
 表格单元格的背景颜色。
UIColor * tableCellSeparatorColor
 表格单元格之间的分隔线颜色。
UIColor * primaryTextColor
 自动补全结果中结果名称文本的颜色。
UIColor * primaryTextHighlightColor
 用于在自动补全结果中突出显示匹配文本的颜色。
UIColor * secondaryTextColor
 自动补全结果中第二行文字的颜色。
UIColor * tintColor
 应用于“自动补全”视图中控件的着色颜色。
GMSPlaceFieldplaceFields
 GMSPlaceField,用于指定要请求的显式地点详情。

成员函数文档

-(实例类型)初始化

初始化数据源。

-(空)sourceTextHasChanged: (可为 null 的 NSString *) 文本

通知数据源要自动填充的源文本已更改。

仅应从主线程调用此方法。从其他线程调用此方法会导致出现未定义的行为。对 GMSAutocompleteTableDataSourceDelegate 方法的调用也将在主线程上调用。

此方法不会阻塞。

参数:
text自动填充的部分文本。
- (void) clearResults

清除所有预测。

注意
这将调用以下两个委托方法
  • didUpdateAutocompletePredictionsForResultsController:
  • didRequestAutocompletePredictionsForResultsController:

此方法的实现可以保证按顺序同步调用。


属性说明

- (IBOutlet id<GMSAutocompleteTableDataSourceDelegate>) 委托 [read, write, assign]

委托系统在所选地点或所选地点取消时收到通知。

- (GMSAutocompleteFilter*) autocompleteFilter [read, write, assign]

应用到自动补全建议的过滤条件(可以是 nil)。

- (UIColor*) tableCellBackgroundColor [read, write, assign]

表格单元格的背景颜色。

- (UIColor*) tableCellSeparatorColor [read, write, assign]

表格单元格之间的分隔线颜色。

- (UIColor*) primaryTextColor [read, write, assign]

自动补全结果中结果名称文本的颜色。

- (UIColor*) primaryTextHighlightColor [read, write, assign]

用于在自动补全结果中突出显示匹配文本的颜色。

- (UIColor*) secondaryTextColor [read, write, assign]

自动补全结果中第二行文字的颜色。

- (UIColor*) tintColor [read, write, assign]

应用于“自动补全”视图中控件的着色颜色。

- (GMSPlaceField) placeField [read, write, assign]

GMSPlaceField,用于指定要请求的显式地点详情。

默认值会返回所有可用字段。