2016-04-14 15 views
0

GoogleマップSDKを使用するアプリケーションをビルドします。その目的のために、私はビュー(ルートビュー)をmapViewとして定義しました。今私はmapViewの上にしたい別のビューを追加していますが、私はviewDidLoad()でそれをやっているだけで、それは起こっていません。私は本当に助けと、それがなぜ起こるのかについての説明にも感謝しています... topViewBarは私がストーリーボードで追加したUIViewです。viewDidLoad()のaddSubView()およびbringSubViewToFront()は機能しません。

class MapViewController: UIViewController { 

@IBOutlet weak var topViewBar: UIView! 



override func viewDidLoad() { 
    super.viewDidLoad() 
//MARK: - put event on map function 

    func putEventOnMAp(latitude: CLLocationDegrees, longitude: CLLocationDegrees, eventInfo: String, map: GMSMapView) { 
     let marker = GMSMarker() 
     marker.position = CLLocationCoordinate2DMake(latitude, longitude) 
     marker.title = eventInfo 
     marker.map = map 


    } 

//MARK: - Initialize map view 
    let camera = GMSCameraPosition.cameraWithLatitude(-33.86, 
                 longitude: 151.20, zoom: 6) 
    let mapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera) 
    mapView.myLocationEnabled = true 
    self.view = mapView 
    self.view.addSubview(topViewBar) // these two lines is where I try to add the additional view 
    self.view.bringSubviewToFront(topViewBar) 


    let marker = GMSMarker() 
    marker.position = CLLocationCoordinate2DMake(-33.86, 151.20) 
    marker.title = "Sydney" 
    marker.snippet = "Australia" 
    marker.map = mapView 

答えて

0

あなたはmapViewのサブビューとしてtopViewBarを追加しています。あなたがしたいことは、単純なコンテナUIViewを初期化してself.viewに設定することだと思います。次にUIViewのサブビューとしてmapViewtopViewBarを両方とも追加します。

+0

Hey Dash。私はそれをやろうとしましたが、マップ全体を提示するのに失敗しています。私はviewDidLoadからマップを初期化できる唯一の方法だから、ルートビューにマップを追加しました。なぜこれが起こっているのかご存じですか? –

+0

Soory、地図を追加します。しかし、マーカーを置くことができません。だからこそ、私は根本的な見方をしました。いずれにせよ、私はそれの上にビューを追加する方法があると確信しています...私は思いますか? –

関連する問題