欧美人两个人激情的免费视频_国产亚洲人成网站在线观看不卡_直接看毛片_免费乱理伦片在线观看app

十三年專注于網(wǎng)站建設(shè)與互聯(lián)網(wǎng)應(yīng)用開發(fā),低調(diào)、有情懷的網(wǎng)絡(luò)應(yīng)用服務(wù)商!
南昌百恒科技微信公眾號 掃一掃關(guān)注
tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒科技微信公眾號

IOS地圖添加標注一:觸發(fā)添加動作

百恒網(wǎng)絡(luò) 2018-08-11 17:10:23 2838
? ? ? ?在iOS 6之后,蘋果地圖代替了谷歌地圖。但API編程接口沒有太大的變化,所以在南昌APP開發(fā)中開發(fā)人員不需要再學(xué)習(xí)很多新東西就能開發(fā)地圖應(yīng)用。而今天小編主要想為大家介紹一下在地圖上視圖上添加標注點。

? ? ? ?如果要實現(xiàn)在地圖視圖上添加標注點,需要兩個步驟:一是觸發(fā)添加動作,二是實現(xiàn)地圖委托方法mapView:viewForAnnotation:。我們今天先來學(xué)習(xí)一下觸發(fā)添加動作的方法。

? ? ? ?觸發(fā)添加動作

? ? ? ?我們通過“查詢”按鈕觸發(fā)添加標注動作,相關(guān)代碼如下:

IOS地圖添加標注一:觸發(fā)添加動作一IOS地圖添加標注一:觸發(fā)添加動作二


? ? ? ?當用戶點擊“查詢”按鈕時,開始進行地理信息編碼,如果編碼成功,則調(diào)用completionHandler方法。第①行代碼用于移除目前地圖上所有的標注點,否則反復(fù)點擊“查詢”按鈕,你會發(fā)現(xiàn)地圖上的標注點越來越多。

? ? ? ?第②行代碼使用MKCoordinateRegionMakeWithDistance函數(shù)創(chuàng)建一個結(jié)構(gòu)體MKCoordinateRegion,該結(jié)構(gòu)體封裝了一個地圖區(qū)域,其定義如下:


IOS地圖添加標注一:觸發(fā)添加動作三

? ? ? ?在上述代碼中,成員center定義了區(qū)域中心點,它是CLLocationCoordinate2D結(jié)構(gòu)體類型。span成員定義了區(qū)域的跨度,它是MKCoordinateSpan結(jié)構(gòu)體類型。MKCoordinateSpan結(jié)構(gòu)體封裝了在地圖上的跨度信息,它的定義如下:


IOS地圖添加標注一:觸發(fā)添加動作四

? ? ? ?在上述代碼中,latitudeDelta為南北跨度,它的單位是“度”,1度大約是111公里。longitudeDelta為東西跨度,在赤道上1度大約是111公里,隨著靠近兩極,這個距離逐步變小,在地球的兩個極點時變?yōu)?公里。它們是有差別的,這源于我們地球經(jīng)線和緯線的中心點不同。

? ? ? ?在第②行代碼中,MKCoordinateRegionMakeWithDistance函數(shù)的第一個參數(shù)是CLLocationCoordinate2D結(jié)構(gòu),指定了目標區(qū)域的中心點;第二個參數(shù)是目標區(qū)域南北的跨度,其單位是米;第三個參數(shù)是目標區(qū)域東西的跨度,其單位是米。后面兩個參數(shù)的調(diào)整會影響地圖縮放。

? ? ? ?第③行代碼重新設(shè)置地圖視圖的顯示區(qū)域。animated設(shè)置為true(或YES)時,會使地圖有“飛”過去的動畫效果。

? ? ? ?第④行代碼用于實例化MyAnnotation對象。MyAnnotation類是我們自定義的實現(xiàn)MKAnnotation協(xié)議的地圖標注點類。因為地圖上的標注點是MKPinAnnotationView(大頭針標注視圖)類型,這個視圖要求標注點信息由實現(xiàn)MKAnnotation協(xié)議的類提供。如果標識點上顯示的信息是固定的,可以使用Map Kit API實現(xiàn)MKPointAnnotation標注類。第④~⑤行代碼將地標CLPlacemark對象信息取出,放入到MapLocation對象中。為什么要這樣導(dǎo)來導(dǎo)去呢?

? ? ? ?這是因為在MKPinAnnotationView視圖中,只能接收實現(xiàn)MKAnnotation協(xié)議的類,而地標類CLPlacemark沒有實現(xiàn)MKAnnotation協(xié)議。

? ? ? ?第⑥行代碼把標注點MyAnnotation對象添加到地圖視圖上。一旦該方法被調(diào)用,地圖視圖委托方法mapView:viewForAnnotation:就會被回調(diào)。

? ? ? ?關(guān)于IOS地圖添加標注中的觸發(fā)添加動作就先介紹到這里,還有最后一個步驟將在下次為大家介紹,歡迎大家繼續(xù)關(guān)注百恒網(wǎng)絡(luò)公司網(wǎng)站!
400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號

歡迎您的光顧,我們將竭誠為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
售后服務(wù) 售后服務(wù)
 
×