0
秒の時間を更新していない私はここにSingeltonを使用してUITextFieldの値を渡していますが、私のSingeltonクラスです:Swift3 - シングルトンUITextFieldの値を共有する
class CityName {
static var sharedInstance = CityName()
private init() {}
var cityName:String!
}
そして、ここでは、私は、この値に
let WEATHER_URL = BASE_URL + CityName.sharedInstance.cityName + API_Key
を使用しています、私のクラス定数であります
@IBAction func searchButtonTapped(_ sender: Any) {
CityName.sharedInstance.cityName = cityNameTextField.text!
print(CityName.sharedInstance.cityName)
networkConnection.getWeatherDetails {
self.currentTempLabel.text = String(self.networkConnection.currentTemp)
self.minTempLabel.text = String(self.networkConnection.minTemp)
self.maxtTempLabel.text = String(self.networkConnection.maxTemp)
}
}
、私のネットワーク内:私は値を渡すために、ボタンを使用しています私のビューコントローラで
クラスURL接続を作成しています
func getWeatherDetails(completed: @escaping DownloadComplete) {
print(WEATHER_URL)
Alamofire.request(WEATHER_URL).responseJSON { response in
let result = response.result
if let dict = result.value as? Dictionary<String, AnyObject> {
if let main = dict["main"] as? Dictionary<String, AnyObject> {
if let currentTemperature = main["temp"] as? Double {
let kelvinToFarenheitPreDivision = (currentTemperature * (9/5) - 459.67)
let kelvinToFarenheit = Double(round(10 * kelvinToFarenheitPreDivision/10))
self._currentTemp = kelvinToFarenheit
print(self._currentTemp)
}
}
}
completed()
}
}
このコードは、テキストフィールドに最初に値を入力すると正常に動作します。しかし、テキストフィールドに新しい値を追加するとURLが更新されません。