2016-05-10 4 views
1

AppleはiOS 9.3にMKLocalSearchCompleterとMKLocalSearchCompletionを導入しました。私はそれを実装しようとしています。それは2つのステップのプロセスになります。 1)部分タームを入力 - >完全な検索テキストが生成されます。 2)ユーザーは、実際の場所を検索するためにこれらのいずれかを選択します。iOS9.3のMKLocalSearchCompletionオブジェクトからMKMapItemを特定する方法は?

私は200のタウンゼントを検索すると、それは私に場所のリストを与えますが、それはアプリケーションによって提案として扱われるまでです。 MKMampItemか提案かどうかをどのように識別できますか?

答えて

4

これを行う1つの方法は、をMKLocalSearchCompletionで初期化することです。

let request = MKLocalSearchRequest(completion: completion) 

その後、MKLocalSearchRequestMKLocalSearchを初期化することができます。

let search = MKLocalSearch(request: request) 

その後、MKLocalSearchResponse?NSError?で完了ハンドラを持っているsearchを開始することができます。 MKLocalSearchResponse?MKMapItemの配列を持ちます。

全例:

let request = MKLocalSearchRequest(completion: completion) 
let search = MKLocalSearch(request: request) 
search.startWithCompletionHandler { (response: MKLocalSearchResponse?, error: NSError?) in 
    if let error = error { 
     // do something with "error" 
    } 
    else if let mapItems = response?.mapItems { 
     // do something with "mapItems" 
    } 
} 
関連する問題