Я пытаюсь запустить функцию API, изменить переменные и затем показать эти результаты в представлении.
Я посмотрел другие решения по переполнению стека, но не понял ни одного из них.
Поэтому я написал некоторый фиктивный код, чтобы показать, что я имею в виду.Это выглядит просто, но это было очень сложно и сложно.
import UIKit
import Alamofire
import SwiftyJSON
class HomeViewController: UIViewController {
@IBOutlet weak var weather: UILabel!
var temperature = ""
override func viewDidLoad() {
super.viewDidLoad()
getWeatherData()
weather.text = temperature // This still returns an empty string
}
func getWeatherData() {
Alamofire.request("http://api.openweathermap.org/data/2.5/weather", method: .get).responseJSON {
response in
if response.result.isSuccess {
print("Success! Got the weather data")
let weatherJSON : JSON = JSON(response.result.value!)
temperature = String(weatherJSON["main"]["temp"].double)
} else {
print("Error \(String(response.result.error))")
}
}
}
}
Как мне сделать новое значение для temperature
доступным глобально?