我有一个UIViewController
,在我的故事板中,我有一个UITableViewController
和一个GMSMapView
。
好吧,我有一项服务来填充我的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并添加这些谷歌标记?
答案 0 :(得分:0)
现在,您的RequestViewController是仅存在于viewDidLoad中的实例。使它成为一个类属性,您将能够在任何地方访问它。