22

我刚刚创建了一个新的 iOS Single View App,并尝试构建并运行它。我收到如下警告:

[Renderer] IconRenderer: HorizontalStretchPadding (18.000000, 18.000000) is larger than the image size (34.000000, 54.000000). Image will now use the center column of pixels to stretch.

此警告不断显示多次。

4

3 回答 3

1

当我以编程方式选择MKMarkerAnnotationView动画方式时,我遇到了这个警告。

我通过调用prepareForDisplayAPI解决了我的 UI 问题MKMarkerAnnotationView


if #available(iOS 11.0, *) {
    let view = mapView.view(for: annotation)
    view?.prepareForDisplay()
}

让我知道这是否有帮助。

最好的,鲍里斯

于 2020-04-18T22:02:47.480 回答
1

我想了很久这个警告,过了一会儿我发现我的问题是什么。使用MapKit框架创建地图时,程序根据传递的值返回latitudeDelta此错误longitudeDeltaMKCoordinateSpan所以,我只是减少了这些值,使地图更接近,但警告不再出现。我的工作代码没有错误:

import SwiftUI
import MapKit

struct MapView: View {
    var coordinate: CLLocationCoordinate2D
    
    @State private var region = MKCoordinateRegion()
    
    var body: some View {
        Map(coordinateRegion: $region).onAppear() {
            setRegion(coordinate)
        }
    }
    
    private func setRegion(_ coordinate: CLLocationCoordinate2D) {
        region = MKCoordinateRegion(center: coordinate, span: MKCoordinateSpan(latitudeDelta: 0.040, longitudeDelta: 0.040))
    }
}

struct MapView_Previews: PreviewProvider {
    static var previews: some View {
        MapView1(coordinate: CLLocationCoordinate2D(latitude: 55.7522200, longitude:  37.6155600))
    }

}

在此之前,这些值如下: region = MKCoordinateRegion(center: coordinate, span: MKCoordinateSpan(latitudeDelta: 0.1, longitudeDelta: 0.1))

于 2021-04-08T21:38:18.593 回答
-9

我在 MapView 中遇到了同样的问题。

我只是在我的方案中禁用系统登录,我的MKPointAnnotation也可以。

OS_ACTIVITY_MODE:禁用

在此处输入图像描述

于 2019-11-16T03:30:27.013 回答