2017-01-31 43 views
0

我有一個UIViewController,在這個在我的故事板裏面我有一個UITableViewController和一個GMSMapView從UITableViewController添加標記到UIViewController

那麼,我有一個服務來填充我的UITableViewController,有一些信息和地理位置。 UITableViewController行爲是完美的,但是當我嘗試訪問我的UIViewController時,不會添加標記。

class RequestViewController: UIViewController { 

    @IBOutlet weak var mapView: GMSMapView! 
    var solicitudes = [SolicitudesModel]() 

    override func viewDidLoad() { 

     super.viewDidLoad() 

     let camera = GMSCameraPosition.camera(withLatitude: 83.4824182, longitude: -88.1776567, zoom: 15) 
     self.mapView.camera = camera 

     let marker = GMSMarker() 
     marker.position = CLLocationCoordinate2DMake(13.4824182, -88.1776567) 
     marker.title = "My location" 

     marker.map = self.mapView 
    } 

} 

添加了此標記。

class RequestTableViewController: UITableViewController { 

    var reqs = [RequestModel]() 

    @IBOutlet var RequestTable: UITableView! 

    override func viewDidLoad() { 

     var requestVC = RequestViewController() 

     Alamofire.request(UrlGlobals.retriveInformation()).responseJSON { response in 
      let json = JSON(response.result.value) 
      var i: Int = 0 

      self.reqs.removeAll() 
      for _ in json.array ?? [] { 
       //Some code to populate the table 

       let marker = GMSMarker() 
       marker.position = CLLocationCoordinate2DMake(CLLocationDegrees(json["lat"].float!), CLLocationDegrees(json["lng"].float!)) 
       marker.title = "Some title" 

       marker.map = requestVC.mapView 

      } 
      self.RequestTable.reloadData() 

     } 
    } 
} 

json正確檢索所有信息。我如何訪問我的主要ViewController並添加這些谷歌標記?

+1

我不明白這一點:什麼是ViewControllers之間的工作流程?你是從RequestTableViewController開始,然後想要顯示RequestViewController,還是相反,你從RVC開始,打開RTVC並想將結果傳播回(主)RVC? –

回答

0

現在你的RequestViewController是一個只存在於viewDidLoad中的實例。使它成爲一個類的屬性,你將能夠在任何地方訪問它。

相關問題