#発生している問題
TabBar Controller + Navigation Controller + ViewControllerとしたときにViewControllerのNavigationBarが透過してしまいます。
TabBarはTabBar ControllerでbackgroundColorを.systemBackground
にしたら透過しなくなったのですが、(下記図のオレンジ枠部分)
Navigation BarのBackgroundColorをNavigation Controllerで.systemBackground
に変更しても、(下記図の紫枠部分)
ViewControllerの上の方が透過してしまいます。
①Tab BarのbackgoundColorだけを変えたとき | ②Tab BarとNavigationBarのbackgroundColorを変えたとき |
---|---|
Mapsという文字が重なってしまっている | Mapsの部分だけbackgroundColorは変わったが、上のStatusBar部分が変わっていない |
ViewController
1@IBOutlet weak var googleView: UIView! 2 3 override func viewDidLoad() { 4 super.viewDidLoad() 5 6 setupMap() 7 8// ②のnavigationBarの色変更はStoryboard、コードで試したがいずれも同じ状態に 9 self.navigationController?.navigationBar.backgroundColor = .systemBackground 10 11 12 } 13 14 private func setupMap() { 15 var mapsView = GMSMapView() 16 let marker = GMSMarker() 17 let mapID = GMSMapID(identifier: "XXXXXXXXXXXXX") 18 let camera = GMSCameraPosition.camera(withLatitude: 35.66191723075172, longitude: 139.701969302349, zoom: 12.0) 19 20 mapsView = GMSMapView(frame: CGRect(x: 0, y: 0, width: googleView.bounds.width, height: googleView.bounds.height), 21 mapID: mapID, camera: camera) 22 23 mapsView.isMyLocationEnabled = true 24 mapsView.settings.myLocationButton = true 25 26 marker.position = CLLocationCoordinate2D(latitude: 35.66191723075172, longitude: 139.701969302349) 27 marker.title = "MIYASHITA PARK" 28 marker.snippet = "Shibuya Ward" 29 marker.map = mapsView 30 31 self.googleView.addSubview(mapsView) 32 }
環境
UIKit
macOS Monterey v12.1
Xcode v13.2.1 (13C100)
<使用ライブラリ>
Google Maps SDK for iOS (v6.0.1)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。