接觸高德地圖也有一段時間了。但是也有很長一段時間沒用了,手生了。閒來無事就再寫寫地圖。好在高德的文檔做的很詳實,使用起來得心應手。今天就寫了一點關於顯示/定位/POI搜索/大頭針/氣泡的簡單代碼。
難點就是搜索後大頭針的問題。首先需要移除上一次搜索顯示的大頭針,再顯示這一次需要顯示大頭針,不然屏幕顯示的大頭針會越來越多。這一點在官方的視頻裏面是有這些的。
首先上一張效果圖:
這次使用的版本是V2.6.0的。這個官方也有文檔和視頻。高德開放平臺 http://lbs.amap.com/api/ios-sdk/guide/nearby/。
之間看代碼,代碼裏面的註釋還是比較詳細的。代碼下載地址:高德地圖Demo下載 https://github.com/zhuming3834/GaodeDemo。
ViewController.m
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#import <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(25, 70, 157);">"ViewController.h"</span></span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//地圖顯示需要的頭文件</span>
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#import <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(25, 70, 157);"><MAMapKit/MAMapKit.h></span></span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//poi搜素需要的頭文件</span>
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#import <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(25, 70, 157);"><AMapSearchKit/AMapSearchAPI.h></span></span>
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#import <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(25, 70, 157);">"DetailViewController.h"</span></span>
<span class="hljs-class" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(68, 85, 136);"><span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@interface</span> <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">ViewController</span> ()<<span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">MAMapViewDelegate</span>, <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">AMapSearchDelegate</span>,<span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">UISearchBarDelegate</span>,<span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">UITableViewDelegate</span>,<span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">UITableViewDataSource</span>></span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)MAMapView *mapView;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)AMapSearchAPI *search;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)MAUserLocation *location;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)AMapPlaceSearchRequest *request;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> *searchBar;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *tableView;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSMutableArray</span> *annotationArr;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">strong</span>)<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSMutableArray</span> *poisArray;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>,<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">assign</span>)<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSInteger</span> index;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@end</span>
<span class="hljs-class" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(68, 85, 136);"><span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@implementation</span> <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">ViewController</span></span>
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#pragma mark - 頁面跳轉時需要使用</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/* 需要頁面跳轉時使用
- (void)viewWillAppear:(BOOL)animated{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(setPoiPoint:) name:@"test" object:nil];
}
- (void)setPoiPoint:(NSNotification *)notice{
//先移除掉上次搜索的大頭針
[self.mapView removeAnnotations:self.annotationArr];
//清空數組
[self.annotationArr removeAllObjects];
NSString *index = notice.object;
AMapPOI *poi = self.poisArray[index.integerValue];
MAPointAnnotation *annotation = [[MAPointAnnotation alloc] init];
CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(poi.location.latitude, poi.location.longitude);
annotation.coordinate = coordinate;
annotation.title = poi.name;
annotation.subtitle = poi.address;
[self.annotationArr addObject:annotation];
[self.mapView addAnnotation:annotation];
}
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)viewDidLoad {
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">super</span> viewDidLoad];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//增加一個KVO index</span>
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> addObserver:<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> forKeyPath:<span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"index"</span> options: NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:<span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nil</span>];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.annotationArr</span> = [[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSMutableArray</span> alloc] init];
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> configApiKey];
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> setMySearchConterl];
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> setMainView];
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> setTableView];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//獲取bundleIdentifier</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// NSLog(@"bundleIdentifier = %@",[[NSBundle mainBundle] bundleIdentifier]);</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// Do any additional setup after loading the view, typically from a nib.</span>
}
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#pragma mark - 地圖顯示和搜索部分</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 配置APIKey
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)configApiKey{
[MAMapServices sharedServices]<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.apiKey</span> = <span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"a12bc9db3e3f5ba30482aa704ee0fc29"</span>;
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置地圖顯示 有這個方法就可以顯示用戶的位置
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)setMainView{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span> = [[MAMapView alloc] initWithFrame:CGRectMake(<span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">0</span>, <span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">64</span>, <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.view</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.frame</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.size</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.width</span>, <span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">200</span>)];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.delegate</span> = <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//設置地圖語言 默認是中文</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// self.mapView.language = MAMapLanguageEn;</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//地圖類型 默認是2D柵格地圖</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// self.mapView.mapType = MAMapTypeSatellite;</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//關閉指南針顯示</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.showsCompass</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">NO</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//關閉比例尺顯示</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.showsScale</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">NO</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//顯示用戶位置</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.showsUserLocation</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//設置跟蹤模式</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.userTrackingMode</span> = MAUserTrackingModeFollow;
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.view</span> addSubview:<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span>];
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置POI搜素請求
*
* @param keyword 搜索需要的關鍵字
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)setPoiSearchMapWithKeyword:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> *)keyword{
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//初始化檢索對象</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.search</span> = [[AMapSearchAPI alloc] initWithSearchKey:[MAMapServices sharedServices]<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.apiKey</span> Delegate:<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span>];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//構建AMapPlaceSearchRequest對象</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.request</span> = [[AMapPlaceSearchRequest alloc] init];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//搜索類型 關鍵字搜索</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.request</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchType</span> = AMapSearchType_PlaceKeyword;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//設置搜索關鍵字</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.request</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.keywords</span> = keyword;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//搜索地點 廣州</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.request</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.city</span> = @[<span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"guangzhou"</span>];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//開擴展</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.request</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.requireExtension</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//發起POI搜索</span>
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.search</span> AMapPlaceSearch:<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.request</span>];
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* POI搜索請求後調用的方法
*
* @param request 搜索請求
* @param response 請求結果
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)onPlaceSearchDone:(AMapPlaceSearchRequest *)request response:(AMapPlaceSearchResponse *)response{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">if</span> (response<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.count</span> == <span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">0</span>) {
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span>;
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/* 僅僅顯示搜索結果的大頭針
//先移除掉上次搜索的大頭針 不然上一次的大頭針會一直存在
[self.mapView removeAnnotations:self.annotationArr];
//清空數組
[self.annotationArr removeAllObjects];
*/</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// NSString *responseCount = [NSString stringWithFormat:@"%d",response.count];;</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// NSLog(@"responseCount = %@",responseCount);</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.poisArray</span> = [[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSMutableArray</span> alloc] init];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">for</span> (AMapPOI *poi <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">in</span> response<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.pois</span>) {
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.poisArray</span> addObject:poi];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/* 僅僅顯示搜索結果的大頭針
MAPointAnnotation *annotation = [[MAPointAnnotation alloc] init];
CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(poi.location.latitude, poi.location.longitude);
annotation.coordinate = coordinate;
annotation.title = poi.name;
annotation.subtitle = poi.address;
[self.annotationArr addObject:annotation];
[self.mapView addAnnotation:annotation];
*/</span>
}
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span> reloadData];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/*需要頁面跳轉時使用
DetailViewController *dvc = [[DetailViewController alloc] init];
dvc.poisArray = self.poisArray;
[self presentViewController:dvc animated:YES completion:nil];
*/</span>
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置大頭針點擊後的氣泡
*
* @param mapView mapView
* @param annotation annotation
*
* @return 氣泡
*/</span>
- (MAAnnotationView *)mapView:(MAMapView *)mapView viewForAnnotation:(<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">id</span><MAAnnotation>)annotation{
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// if ([annotation isKindOfClass:[MAAnnotationView class]]) {</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">static</span> <span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> *identify = <span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"annotation"</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//在原有的大頭針中添加自定義的修飾</span>
MAPinAnnotationView *pointAnnotation = (MAPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:identify];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">if</span> (pointAnnotation == <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nil</span>) {
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//在原有的大頭針中創建一個新的自定義的大頭針</span>
pointAnnotation = [[MAPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identify];
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//設置是否能選中的標題</span>
pointAnnotation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.canShowCallout</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//是否允許拖拽</span>
pointAnnotation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.draggable</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//是否允許退拽動畫</span>
pointAnnotation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.animatesDrop</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> pointAnnotation;
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 地圖定位後就會調用這個方法 酒店
*
* @param mapView 當前的mapView
* @param userLocation userLocation
* @param updatingLocation 位置更新標誌
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)mapView:(MAMapView *)mapView didUpdateUserLocation:(MAUserLocation *)userLocation updatingLocation:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">BOOL</span>)updatingLocation{
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// NSLog(@"地圖");</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">if</span> (updatingLocation) {
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// NSLog(@"latitude = %f longitude = %f",userLocation.coordinate.latitude,userLocation.coordinate.longitude);</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//確定地圖經緯度</span>
CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(userLocation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.coordinate</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.latitude</span>, userLocation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.coordinate</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.longitude</span>);
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//設置的當前位置 爲地圖中心</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.centerCoordinate</span> = coordinate;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.location</span> = userLocation;
}
}
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#pragma mark - searchBar部分</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置searchBar
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)setMySearchConterl{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchBar</span> = [[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> alloc] init];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchBar</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.frame</span> = CGRectMake(<span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">0</span>, <span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">20</span>, <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.view</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.frame</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.size</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.width</span>, <span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">44</span>);
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchBar</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.delegate</span> = <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span>;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchBar</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.placeholder</span> = <span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"請輸入關鍵字"</span>;
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.view</span> addSubview:<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchBar</span>];
}
- (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">BOOL</span>)searchBarShouldBeginEditing:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> *)searchBar{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置左邊的“取消”按鈕
*
* @param searchBar searchBar
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)searchBarTextDidBeginEditing:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> *)searchBar{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchBar</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.showsCancelButton</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">for</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">id</span> cc <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">in</span> [searchBar<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.subviews</span>[<span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">0</span>] subviews]) {
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">if</span> ([cc isKindOfClass:[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UIButton</span> class]]) {
<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UIButton</span> * cancelButton = (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UIButton</span> *)cc;
[cancelButton setTitle:<span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"取消"</span> forState:UIControlStateNormal];
}
}
}<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// called when text starts editing</span>
- (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">BOOL</span>)searchBarShouldEndEditing:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> *)searchBar{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
}<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// return NO to not resign first responder</span>
- (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">BOOL</span>)searchBar:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> *)searchBar shouldChangeTextInRange:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSRange</span>)range replacementText:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> *)text NS_AVAILABLE_IOS(<span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">3</span>_0){
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span>;
}<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// called before text changes</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 鍵盤搜索按鈕按下就會調用這個方法
*
* @param searchBar searchBar本身
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)searchBarSearchButtonClicked:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> *)searchBar{
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// NSLog(@"text = %@",searchBar.text);</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//發起POI搜索請求</span>
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> setPoiSearchMapWithKeyword:searchBar<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.text</span>];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//收起鍵盤</span>
[searchBar resignFirstResponder];
searchBar<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.text</span> = <span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@""</span>;
}<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// called when keyboard search button pressed</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* “取消”按鈕按下會調用這個方法
* 收起鍵盤
* @param searchBar searchBar本身
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)searchBarCancelButtonClicked:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UISearchBar</span> *)searchBar{
[searchBar resignFirstResponder];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.searchBar</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.showsCancelButton</span> = <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">NO</span>;
}<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// called when cancel button pressed</span>
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#pragma mark - tableView部分</span>
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置tableView
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)setTableView{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span> = [[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> alloc] init];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.frame</span> = CGRectMake(<span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">0</span>, <span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">264</span>, <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.view</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.frame</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.size</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.width</span>, <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.view</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.frame</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.size</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.height</span> - <span class="hljs-number" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 160, 112);">264</span>);
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.delegate</span> = <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span>;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.dataSource</span> = <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span>;
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.view</span> addSubview:<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span>];
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置tableView的row個數
*
* @param tableView tableView本身
* @param section 當前的section
*
* @return 當前section裏面的row數
*/</span>
- (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSInteger</span>)tableView:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *)tableView numberOfRowsInSection:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSInteger</span>)section{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.poisArray</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.count</span>;
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 設置cell的顯示
*
* @param tableView tableView本身
* @param indexPath cell的位置
*
* @return cell
*/</span>
- (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableViewCell</span> *)tableView:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *)tableView cellForRowAtIndexPath:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSIndexPath</span> *)indexPath{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">static</span> <span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> *identify = <span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"Cell"</span>;
<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableViewCell</span> *cell = [tableView dequeueReusableCellWithIdentifier:identify];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">if</span> (cell == <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nil</span>) {
cell = [[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableViewCell</span> alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:identify];
}
AMapPOI *poi = (AMapPOI *)<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.poisArray</span>[indexPath<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.row</span>];
cell<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.textLabel</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.text</span> = poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.name</span>;
cell<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.detailTextLabel</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.text</span> = poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.address</span>;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> cell;
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* tableView點擊時間
*
* @param tableView tableView本身
* @param indexPath 被點擊的cell的位置
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)tableView:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *)tableView didSelectRowAtIndexPath:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSIndexPath</span> *)indexPath{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.index</span> = indexPath<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.row</span>;
}
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">/**
* 實現KVO鍵值監聽的方法
* 值改變後 增加大頭針
* @param keyPath keyPath
* @param object self
* @param change 值字典
* @param context
*/</span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)observeValueForKeyPath:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> *)keyPath ofObject:(<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">id</span>)object change:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSDictionary</span> *)change context:(<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span> *)context{
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//先移除掉上次搜索的大頭針</span>
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span> removeAnnotations:<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.annotationArr</span>];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//清空數組</span>
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.annotationArr</span> removeAllObjects];
<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> *index = change[<span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"new"</span>];
AMapPOI *poi = <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.poisArray</span>[index<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.integerValue</span>];
MAPointAnnotation *annotation = [[MAPointAnnotation alloc] init];
CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.location</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.latitude</span>, poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.location</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.longitude</span>);
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//地圖中心點 設置爲選中的點</span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.centerCoordinate</span> = coordinate;
annotation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.coordinate</span> = coordinate;
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">//一下兩句 就是氣泡的顯示內容</span>
annotation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.title</span> = poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.name</span>;
annotation<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.subtitle</span> = poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.address</span>;
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.annotationArr</span> addObject:annotation];
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.mapView</span> addAnnotation:annotation];
}
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)didReceiveMemoryWarning {
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">super</span> didReceiveMemoryWarning];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// Dispose of any resources that can be recreated.</span>
}
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@end</span>
DetailViewController.m <span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#import <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(25, 70, 157);">"DetailViewController.h"</span></span>
<span class="hljs-preprocessor" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(153, 153, 153);">#import <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(25, 70, 157);"><AMapSearchKit/AMapSearchAPI.h></span></span>
<span class="hljs-class" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(68, 85, 136);"><span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@interface</span> <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">DetailViewController</span> ()<<span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">UITableViewDataSource</span>,<span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">UITableViewDelegate</span>></span>
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@property</span> (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">weak</span>, <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nonatomic</span>) <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">IBOutlet</span> <span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *tableView;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@end</span>
<span class="hljs-class" style="border: 0px; margin: 0px; padding: 0px; font-weight: bold; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(68, 85, 136);"><span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">@implementation</span> <span class="hljs-title" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent;">DetailViewController</span></span>
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)viewDidLoad {
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">super</span> viewDidLoad];
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> setMainView];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// Do any additional setup after loading the view from its nib.</span>
}
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)setMainView{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.delegate</span> = <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span>;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.tableView</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.dataSource</span> = <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span>;
}
- (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSInteger</span>)tableView:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *)tableView numberOfRowsInSection:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSInteger</span>)section{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> <span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.poisArray</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.count</span>;
}
- (<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableViewCell</span> *)tableView:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *)tableView cellForRowAtIndexPath:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSIndexPath</span> *)indexPath{
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">static</span> <span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> *identify = <span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"Cell"</span>;
<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableViewCell</span> *cell = [tableView dequeueReusableCellWithIdentifier:identify];
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">if</span> (cell == <span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nil</span>) {
cell = [[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableViewCell</span> alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:identify];
}
AMapPOI *poi = (AMapPOI *)<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.poisArray</span>[indexPath<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.row</span>];
cell<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.textLabel</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.text</span> = poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.name</span>;
cell<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.detailTextLabel</span><span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.text</span> = poi<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.address</span>;
<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">return</span> cell;
}
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)tableView:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">UITableView</span> *)tableView didSelectRowAtIndexPath:(<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSIndexPath</span> *)indexPath{
[[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSNotificationCenter</span> defaultCenter] postNotificationName:<span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"test"</span> object:[<span class="hljs-built_in" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 134, 179);">NSString</span> stringWithFormat:<span class="hljs-string" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(33, 145, 97);">@"%d"</span>,indexPath<span class="hljs-variable" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(0, 128, 128);">.row</span>]];
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">self</span> dismissViewControllerAnimated:<span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">YES</span> completion:<span class="hljs-literal" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">nil</span>];
}
- (<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">void</span>)didReceiveMemoryWarning {
[<span class="hljs-keyword" style="border: 0px; margin: 0px; padding: 0px; font-style: inherit; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(149, 65, 33);">super</span> didReceiveMemoryWarning];
<span class="hljs-comment" style="border: 0px; margin: 0px; padding: 0px; font-style: italic; font-family: inherit; vertical-align: baseline; background-color: transparent; color: rgb(64, 128, 128);">// Dispose of any resources that can be recreated.</span>
}