gpt4 book ai didi

ios - 下拉刷新修改数组值?

转载 作者:搜寻专家 更新时间:2023-10-30 21:52:01 26 4
gpt4 key购买 nike

我正在使用 Swift 在 iOS 上进行下拉刷新。
我有一个包含城市名称的数组,cityNames = ["Chicago", "New York City"]
我实现了下拉刷新以从互联网上获取温度数据。因此,每次我触发下拉刷新时,它都会连接到互联网并获取 cityNames 数组中每个城市的温度。
这是下拉刷新的代码

var weatherDetail = [Weather]()
// Pull to refresh
func refreshData() {
var cityNames = [String]()
for (index, _) in weatherDetail.enumerate() {
let info = weatherDetail[index]
cityNames.append(info.cityName)
}
print(cityNames)
weatherDetail.removeAll()
for city in cityNames {
self.forwardGeocoding(city)
}
weatherCityTable.reloadData()
refreshControl.endRefreshing()
}

在上面的代码中,weatherDetail 是一个模型数组(我不知道如何表达这个,但是 Weather 是一个模型,其中包含城市名称,温度,日出时间,高/低温。
forwardGeocoding 是一个获取城市地理坐标然后发送请求以获取该城市天气数据的函数。
下拉刷新有效,我遇到的问题是,在我拉动的前 2,3 次,它没有问题。但是随着我拉的次数越来越多,数组会突然变成 cityNames = ["Chicago", "Chicago"]
感谢您的帮助,如果您需要更多信息,请告诉我。
更新:
我删除了 weatherDetail.removeAll(),尝试将相同的数据附加到数组。刷新后,它打印出 "Chicago"、"New York City"、"Chicago"、"Chicago"。如果我刷新它多次,它会打印出类似 "Chicago", "New York City", "Chicago", "Chicago", "Chicago", "Chicago"

最佳答案

正向地理编码是同步的吗?weatherDetail 何时设置/更新?

在我看来,您在这里遇到了某种同步性问题,可能因延迟而加剧。

关于ios - 下拉刷新修改数组值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36390125/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com