如何知道数组计数是否在 didUpdateLocations Swift 中递增
How to know if array count is incrementing in didUpdateLocations Swift
你好,我是 swift 的新手。我正在使用 Google Maps Sdk 的 didUpdateLocations 方法在地图上绘制路径。我只需要一些关于数组计数的帮助......
如果数组计数增加,我想 运行 一些函数。我将纬度和经度存储在两个数组中。
var latarray = [Double]()
var longarray = [Double]()
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
locationManager.startMonitoringSignificantLocationChanges()
locationManager.startUpdatingLocation()
myMapView.clear()
if (self.latarray.count != 0 ) {
longarray.append(long)
latarray.append(lat)
print ("lat array is \(latarray)count is \(latarray.count)")
print ("long array is \(longarray)count is \(longarray.count)")
}
else {
Print("array not increasing ")
}
let location = locations.last
self.lat = (location?.coordinate.latitude)!
self.long = (location?.coordinate.longitude)!
let currtlocation = CLLocation(latitude: lat, longitude: long)
}
如果数组计数增加,是否有任何运算符可以显示数组内容。
谢谢和问候 ..
Swift 有一个叫做 属性 观察者的东西,当 属性 是 set/changed 时,你可以用它来执行代码。它们是 willSet
和 didSet
,它们也适用于数组。您可以阅读有关属性和 属性 观察者的更多信息 here
一个例子
struct Test {
var array = [Int]() {
didSet {
print("Array size is \(array.count)")
}
}
}
var test = Test()
test.array.append(1)
test.array.append(1)
test.array.append(1)
test.array = []
打印
Array size is 1
Array size is 2
Array size is 3
Array size is 0
你好,我是 swift 的新手。我正在使用 Google Maps Sdk 的 didUpdateLocations 方法在地图上绘制路径。我只需要一些关于数组计数的帮助......
如果数组计数增加,我想 运行 一些函数。我将纬度和经度存储在两个数组中。
var latarray = [Double]()
var longarray = [Double]()
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
locationManager.startMonitoringSignificantLocationChanges()
locationManager.startUpdatingLocation()
myMapView.clear()
if (self.latarray.count != 0 ) {
longarray.append(long)
latarray.append(lat)
print ("lat array is \(latarray)count is \(latarray.count)")
print ("long array is \(longarray)count is \(longarray.count)")
}
else {
Print("array not increasing ")
}
let location = locations.last
self.lat = (location?.coordinate.latitude)!
self.long = (location?.coordinate.longitude)!
let currtlocation = CLLocation(latitude: lat, longitude: long)
}
如果数组计数增加,是否有任何运算符可以显示数组内容。
谢谢和问候 ..
Swift 有一个叫做 属性 观察者的东西,当 属性 是 set/changed 时,你可以用它来执行代码。它们是 willSet
和 didSet
,它们也适用于数组。您可以阅读有关属性和 属性 观察者的更多信息 here
一个例子
struct Test {
var array = [Int]() {
didSet {
print("Array size is \(array.count)")
}
}
}
var test = Test()
test.array.append(1)
test.array.append(1)
test.array.append(1)
test.array = []
打印
Array size is 1
Array size is 2
Array size is 3
Array size is 0