2017-01-31 4 views
0

저는 UIViewController입니다. 내 스토리 보드에있는이 안에는 UITableViewControllerGMSMapView이 있습니다.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에 액세스하고 해당 Google 마커를 추가하려면 어떻게해야합니까?

+1

요점 : ViewControllers 간의 워크 플로 란 무엇입니까? RequestTableViewController로 시작한 다음 RequestViewController를 표시하고 싶습니까? 그렇지 않으면 RVC로 시작하고 RTVC를 열고 결과를 (기본) RVC로 다시 전달 하시겠습니까? –

답변

0

현재 RequestViewController는 viewDidLoad에만 존재하는 인스턴스입니다. 클래스 속성으로 만들면 어디서나 액세스 할 수 있습니다.

관련 문제