Swift LocalSearchCompleter未被解雇

时间:2019-11-14 14:20:06

标签: swift xcode mapkit swiftui swift5

我有符合MKLocalSearchCompleterDelegate的此类。我还实现了completerDidUpdateResults。我正在使用SwiftUI,所以这里没有视图控制器。我正在尝试将整个逻辑投入使用。

当我尝试致电completer.queryFragment = "be"时,没有任何反应。

这是我的代码:

import Foundation
import MapKit

class LocalSearchCompleterService: NSObject, MKLocalSearchCompleterDelegate {
    let completer: MKLocalSearchCompleter = MKLocalSearchCompleter()

    override init() {
        super.init()
        completer.delegate = self
        let center = CLLocationCoordinate2D(latitude: 47.5596, longitude: 7.5886)
        completer.region = MKCoordinateRegion(center: center, latitudinalMeters: 10000, longitudinalMeters: 10000)
    }

    func completerDidUpdateResults(_ completer: MKLocalSearchCompleter) {
        print("called")
        let addresses = completer.results.map { result in
            result.title + ", " + result.subtitle
        }

        print(addresses)
    }

    func autocomplete() {
        completer.queryFragment = "be"
    }

}

然后我从外面叫它:LocalSearchCompleterService().autocomplete() 控制台没有任何反应

我想念什么?

0 个答案:

没有答案
相关问题