2015-07-03 95 views
4

我在Swift中實現了google maps place picker。谷歌提供的地方選擇器自動顯示一個導航欄的視圖控制器。當我選擇位置或按導航欄上的後退按鈕時,視圖控制器立即消失,無需任何轉換。我似乎無法通過地點選擇器API訪問導航欄。我怎樣才能用動畫解僱placepicker視圖控制器,或者訪問導航欄?我很茫然。當我按下一個按鈕,我的代碼帶來了地方選擇器:Google Maps Place Picker iOS Swift

@IBAction func pickPlace(sender: UIButton) { 
    if let mapView = self.mapView { 

     let visibleRegion = mapView.projection.visibleRegion() 
     let viewport = GMSCoordinateBounds(coordinate: visibleRegion.farLeft, coordinate: visibleRegion.nearRight) 
     let config = GMSPlacePickerConfig(viewport: viewport) 
     placePicker = GMSPlacePicker(config: config) 
     placePicker.pickPlaceWithCallback { (place: GMSPlace?, error: NSError?) -> Void in 
      if error != nil { 
       println("Error picking place: \(error!.localizedDescription)") 
       return 
      } 
      if place != nil { 
       self.userLocationTextField.text = place!.name 
       println("Place name \(place!.name)") 
       println("Place address \(place!.formattedAddress)") 
       println("Place attributions \(place!.attributions)") 


       let marker = GMSMarker(position: place!.coordinate) 
      } else { 
       println("No place selected") 
      } 
     } 
    } 

我可以接觸到的地方選擇器視圖控制器的唯一方法是使用下面的代碼:

let topVC = UIApplication.sharedApplication().keyWindow?.rootViewController 

但即便如此代碼,我無法改變導航欄或使視圖控制器關閉動畫。

+0

我遇到了同樣的問題。你有沒有設法得到這個修復? – scottlow

+0

我永遠無法修復它,不幸的是 – mperel

+0

我有同樣的問題。您是否找到導航問題的解決方案? – karthik

回答

0

我也面臨同樣的問題,我已經解決了使用下面的代碼。 我寫下面的代碼就位選取器按鈕動作方法

UINavigationBar.appearance().barTintColor = YOURCOLOR 
UINavigationBar.appearance().isTranslucent = false