首页 > 解决方案 > Mapview 在交互上显示白色覆盖

问题描述

我在 SwiftUI 中使用 GMSMapView,在地图视图中我必须显示一些带有纬度和经度的标记。单击任何标记后,我必须移动到另一个视图。我通过将 MapView 放在NavigationLink中来做到这一点。通过使用代码,这件事工作正常。

NavigationView {
    NavigationLink(destination: Text(""), isActive: $abc) {
        MapView().edgesIgnoringSafeArea(.all)
    }
}

问题是NavigationLink ,在每次我与地图交互时将 mapview 放入NavigationLink后,白色叠加层会闪烁。白色覆盖显示在完整地图上,图像附有和没有覆盖。

没有覆盖的屏幕截图

带有叠加层的屏幕截图

标签: swiftswiftuimkmapviewnavigationviewswiftui-navigationlink

解决方案


改为使用

NavigationView {
    MapView().edgesIgnoringSafeArea(.all)
    .background(NavigationLink(destination: Text(""), 
        isActive: $abc) { EmptyView() })
}

推荐阅读