概要
GMSAutocompleteTableDataSource は、UITableViewDataSource プロトコルと UITableViewDelegate プロトコルを実装することで、Place Autocomplete の予測を行い、UITableView にデータを入力するインターフェースを提供します。
GMSAutocompleteTableDataSource は、UISearchDisplayController のデータソースとして使用されるように設計されています。
- 注:
- UISearchDisplayController は iOS 8 でサポートが終了しています。iOS の検索 UI を使用してオートコンプリートの結果を表示するには、
GMSAutocompleteResultsViewController
で UISearchController を使用することをおすすめします。
GMSAutocompleteTableDataSource のインスタンスを UISearchDisplayController の searchResultsDataSource プロパティと searchResultsDelegate プロパティとして設定します。shouldResellerTableForSearchString の実装で、現在の検索文字列を使用して sourceTextHasChanged を呼び出します。
リストから場所が選択されたときに通知を受け取るには、GMSAutocompleteTableDataSourceDelegate
デリゲート プロトコルを使用します。オートコンプリート予測は非同期で読み込まれるため、UISearchDisplayController のテーブルビューで DidUpdateAutocompletePredictions を実装し、reloadData を呼び出す必要があります。
公開メンバー関数 | |
(instancetype) | - initinit |
データソースを初期化します。 | |
(void) | - sourceTextHasChanged: |
オートコンプリートの原文テキストが変更されたことをデータソースに通知します。 | |
(void) | - clearResults |
すべての予測をクリアします。 | |
プロパティ | |
IBOutlet ID < GMSAutocompleteTableDataSourceDelegate > | 委任 |
場所が選択されたとき、または選択がキャンセルされたときに通知を受け取るように委任します。 | |
GMSAutocompleteFilter * | autocompleteFilter |
オートコンプリートの候補に適用するフィルタ(nil にすることもできます)。 | |
UIColor * | tableCellBackgroundColor |
表のセルの背景色。 | |
UIColor * | tableCellSeparatorColor |
表のセルを区切る線の色。 | |
UIColor * | primaryTextColor |
オートコンプリートの結果に表示される結果名のテキストの色。 | |
UIColor * | primaryTextHighlightColor |
オートコンプリートの結果で一致するテキストをハイライト表示するために使用される色。 | |
UIColor * | secondaryTextColor |
オートコンプリートの結果に表示される 2 行目のテキストの色。 | |
UIColor * | tintColor |
Autocomplete ビューのコントロールに適用される色合い。 | |
GMSPlaceField | placeFields |
リクエストする明示的な場所の詳細を指定するための GMSPlaceField 。 | |
NSArray< GMSPlaceProperty > * | placeProperties |
リクエストする明示的な場所の詳細を指定するための GMSPlaceProperty 。 |
メンバー関数のドキュメント
-(instancetype)init |
データソースを初期化します。
- (void) sourceTextHasChanged: | (nullable NSString *) | テキスト |
オートコンプリートの原文テキストが変更されたことをデータソースに通知します。
このメソッドはメインスレッドからのみ呼び出します。このメソッドを別のスレッドから呼び出すと、未定義の動作になります。GMSAutocompleteTableDataSourceDelegate
メソッドの呼び出しは、メインスレッドでも呼び出されます。
この方法は非ブロックです。
- パラメータ:
-
指定しています オートコンプリートする部分のテキスト。
-(void)clearResults |
すべての予測をクリアします。
- 注:
- これにより、以下の 2 つのデリゲート メソッドを呼び出します。
didUpdateAutocompletePredictionsForResultsController:
didRequestAutocompletePredictionsForResultsController:
このメソッドの実装では、これらが同期的かつ順番に呼び出されることが保証されます。
プロパティのドキュメント
- (IBOutlet id<GMSAutocompleteTableDataSourceDelegate>) delegate [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] |
オートコンプリートの結果に表示される 2 行目のテキストの色。
- (UIColor*) tintColor [read, write, assign] |
Autocomplete ビューのコントロールに適用される色合い。
- (GMSPlaceField)placeFields [read, write, assign] |
リクエストする明示的な場所の詳細を指定するための GMSPlaceField
。
デフォルトでは、使用可能なすべてのフィールドが返されます。
- (NSArray<GMSPlaceProperty>*) placeProperties [read, write, assign] |
リクエストする明示的な場所の詳細を指定するための GMSPlaceProperty
。
デフォルトでは、使用可能なすべてのプロパティが返されます。