MapCircle не обновляется при изменении центра или радиуса

Связано с тем, что MapCircle не обновляется при изменении центра или радиуса .
Используя Xcode 15.0 beta 4, у меня естьMapCoordinateструктура:

      private struct MapCoordinate: Equatable {
        let location: Location
        let latitude: Double
        let longitude: Double
        
        var coordinate: CLLocationCoordinate2D {
            return CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
        }
        
        init?(location: Location) {
            guard let latitude = location.latitude,
                  let longitude = location.longitude else {
                return nil
            }
            
            self.location = location
            self.latitude = latitude
            self.longitude = longitude
        }
    }

и переменные состояния:

          @State private var mapCoordinate: MapCoordinate?
    @State private var radius: CLLocationDistance

ИmapView:

          @ViewBuilder var mapView: some View {
        Map {
            if let mapCoordinate {
                let annotationTitle = radius.toMeasurement(unit: .meters, convertedTo: .kilometers)
                Annotation(annotationTitle, coordinate: mapCoordinate.coordinate) {
                    Image(systemImage: .mapPinEllipse)
                        .fontWeight(.semibold)
                }
                
                MapCircle(center: mapCoordinate.coordinate, radius: radius)
                    .foregroundStyle(.teal.opacity(circleOpacity))
                    .stroke(.teal, lineWidth: circleStrokeLineWidth)
            }
        }
        .mapStyle(.standard(elevation: .realistic))
        .animation(.easeInOut, value: mapCoordinate)
    }

Моя цель - позволить пользователю выбирать радиус вокруг своего местоположения.
При обновленииAnnotationбудет правильно анимироваться в новых координатах, ноMapCircleне будет обновлять или изменять масштаб ни для одногоmapCoordinateилиradiusизменения.
Идеи?

1 ответ

Кажется, эта проблема была решена в бета-версии 5.

Другие вопросы по тегам