マップビューで検索機能を使用できるかどうか知っている人はいますか? tableview UI で行われるのと同じように、UISearchbar で注釈を検索/フィルタリングできるようにしたいと考えています。注釈は plist からロードされます。ヒントや助けをいただければ幸いです。あちこち検索していて、何も見つかりません...
1 に答える
1
述語を使用して名前でフィルターします。例えば:
NSArray *filteredAnnotations = [self.mapView.annotations filterUsingPredicate:[NSPredicate predicateWithFormat:@"SELF.name beginswith[dc] %@",userInput]];
次に、すべてを削除し、フィルター処理された配列からの注釈を使用してマップを再読み込みします。
[self.mapView removeAnnotations:self.mapView];
self.mapView.annotations = filteredAnnotations;
searchBarTextDidEndEditing:
のデリゲートのメソッドからこのコードをトリガーしますUISearchBar
。検索のテーブル プレビューが必要ない場合は、UISearchBarDisplayController なしで UISearchBar を使用します。
または、rckoenes が言ったように、フィルタリングされた注釈の領域をズームします。SOにはおそらくそのためのコードがあります。
于 2013-03-26T15:10:35.303 に答える