十年專注于品牌網(wǎng)站建設 十余年專注于網(wǎng)站建設_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
      南昌百恒網(wǎng)絡微信公眾號 掃一掃關注
      小程序
      tel-icon全國服務熱線:400-680-9298,0791-88117053
      掃一掃關注百恒網(wǎng)絡微信公眾號
      掃一掃打開百恒網(wǎng)絡微信小程序

      百恒網(wǎng)絡

      南昌百恒網(wǎng)絡

      IOS軟件開發(fā)中如何顯示地圖

      百恒網(wǎng)絡 2017-08-29 5833

      在iOS 6之后,蘋果自己的地圖代替了谷歌地圖,但是API編程接口沒有太大的變化,所以APP開發(fā)人員不需要再學習很多新東西就能開發(fā)地圖應用。在iOS應用程序中,我們使用Map Kit API開發(fā)地圖應用,其核心是MKMapView類。那么今天南昌APP制作開發(fā)公司-百恒網(wǎng)絡就來為大家簡單介紹一下如何顯示iOS蘋果地圖。

      在Map Kit API中,顯示地圖的視圖是MKMapView,它的委托協(xié)議是MKMapViewDelegate。使用Map Kit API時, 需要導入MapKit框架。下面我們通過如圖1所示的案例介紹一下Map Kit API的用法,在“輸入查詢地點關鍵字”文本框中輸入 關鍵字,點擊“查詢”按鈕,先進行地理信息編碼查詢,獲得地標信息后,會在地圖上標注出來。

      iOS地圖應用案例

      圖1 iOS地圖應用案例

      首先,請參考圖2的操作添加框架MapKit.framework,然后在工程中打開MainStoryboard.storyboard的 Interface Builder設計界面,從對象庫中拖曳MapKit View到設計界面中,如圖3所示。

      模擬器位置菜單

      圖2 模擬器位置菜單

      在Interface Builder中設計MapKit View

      圖3 在Interface Builder中設計MapKit View

      調(diào)整MapKit View的位置和大小,使其盡可能充滿界面下面的空白部分,然后為MapKit View定義輸出口。下面我們看看視圖控制器ViewController中類定義和屬性聲明相關的代碼,具體如下:

      import UIKit

      import CoreLocation

      import MapKit

      class ViewController: UIViewController,MKMapViewDelegate {

      @IBOutlet weak var txtQueryKey: UITextField!

      @IBOutlet weak var mapView: MKMapView!

      ......

      }

      //ViewController.h文件

      #import "MyAnnotation.h"

      #import

      #import

      #import

      @interface ViewController ()

      @property (weak, nonatomic) IBOutlet UITextField *txtQueryKey;

      @property (weak, nonatomic) IBOutlet UITextView *txtView;

      @property (weak, nonatomic) IBOutlet MKMapView *mapView;

      - (IBAction)geocodeQuery:(id)sender;

      @end

      由于使用Map Kit API,需要引入MapKit模塊。在定義ViewController類時,還需要聲明MKMapViewDelegate 協(xié)議。 下面百恒網(wǎng)絡再帶大家認識一下 ViewController中viewDidLoad方法的代碼:

      override func viewDidLoad() {

      super.viewDidLoad()

      self.mapView.mapType = MKMapType.Standard

      self.mapView.delegate = self ①

      }

      - (void)viewDidLoad {

      [super viewDidLoad];

      self.mapView.mapType = MKMapTypeStandard;

      //self.mapView.mapType = MKMapTypeSatellite;

      self.mapView.delegate = self; ①

      }

      在viewDidLoad方法中,我們設置了地圖的類型,其中共有3種類型,它們是在枚舉類型MKMapType中定義的, 具體如下所示。

      1、Standard:標注地圖類型,如圖4所示。Objective-C版本為MKMapTypeStandard。

      2、Satellite:衛(wèi)星地圖類型,如圖5所示,在衛(wèi)星地圖中沒有街道名稱等信息。Objective-C版本為 MKMapTypeSatellite。

      3、Hybrid:混合地圖類型,如圖6所示,混合地圖是在衛(wèi)星地圖上標注出街道等信息。Objective-C版本為MKMapTypeHybrid。

      標注地圖、衛(wèi)星地圖、混合地圖

      在viewDidLoad方法中,第①行代碼用于將當前視圖控制器賦值給地圖視圖的delegate屬性,這樣地圖視圖在需要的時候就會回調(diào)ViewController,如果失敗,就會回調(diào)下面的失敗方法:

      func mapViewDidFailLoadingMap(mapView: MKMapView!, withError error: NSError!)

      {

      NSLog("error : %@", error.description)

      }

      - (void)mapViewDidFailLoadingMap:(MKMapView *)theMapView withError:(NSError

      *)error {

      NSLog(@"error : %@",[error description]);

      }

      以上就是百恒網(wǎng)絡為大家介紹的在南昌APP開發(fā)中顯示iOS蘋果地圖的方法,做法其實很簡單,如果大家還有哪些不明白的地方,可隨時來電和我們聯(lián)系,我們專業(yè)為您解答。此外,如有需要網(wǎng)站建設、微信開發(fā)、APP開發(fā)等服務的朋友,歡迎大家來電和我們聯(lián)系,百恒網(wǎng)絡隨時為您效勞!

      400-680-9298,0791-88117053
      掃一掃關注百恒網(wǎng)絡微信公眾號
      掃一掃打開百恒網(wǎng)絡小程序

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

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      日韩美女18网站久久精品| 精品国产一区二区三区www| 精品国产一区二区麻豆| 91精品久久久久| 日韩精品无码永久免费网站 | 国产精品va在线观看无| 久久av老司机精品网站导航| 国产日韩精品视频| 久久99精品免费视频| 中文国产成人精品久久一| 精品国产中文字幕| 久久91精品国产91久| 日韩精品亚洲aⅴ在线影院| 免费国产精品视频| 亚洲精品福利网泷泽萝拉| 黄床大片免费30分钟国产精品| 国产精品久久久久久一区二区三区| 国产一成人精品福利网站| 亚洲精品无码日韩国产不卡?V| 精品国产香蕉伊思人在线又爽又黄 | 三上悠亚日韩精品| 在线精品视频播放| 久久精品国产2020观看福利| 国产成人综合日韩精品无码| 99rv精品视频在线播放| 热久久这里是精品6免费观看| 国产成人精品午夜福麻豆| 成人国产精品2021| 2021国产精品露脸在线| 久久亚洲精品成人av无码网站| 麻豆va在线精品免费播放| 在线欧美精品一区二区三区| 精品少妇一区二区三区视频| 日韩综合在线观看| 国产精品无码一区二区在线观| 色综合久久夜色精品国产| 国产精品成人观看视频国产奇米| 精品中文字幕一区二区三区四区| 亚洲日韩乱码久久久久久| 伊人天堂av无码av日韩av| 日韩精品久久久久久久电影|