Форматирование NSArray для Swift - PullRequest
0 голосов
/ 24 апреля 2020

Поэтому у меня проблемы с форматированием NSArray

let temp = json.value(forKeyPath: "data.current_condition.temp_F") as Any

                            DispatchQueue.main.async {
                                self.setWeather(temp: temp as! NSArray  )
                              }
func setWeather(  temp: NSArray) {
          TempLabel.text = "\(temp)"

выходное изображение При запуске программы TempLabel показывает только "(", потому что она в форме NSArray. Я не уверен, как я могу избавиться от "(" или преобразовать их в другую переменную. Любой способ удалить "(" и показывает "63"?

1 Ответ

0 голосов
/ 24 апреля 2020

Использование описания объекта для его отображения в пользовательском интерфейсе довольно просто: agile, и может измениться в любое время внутри iOS.

. Вместо этого я попытался бы привести результат вашего json значение в типах Swift. В вашем случае [Int] должно работать. Затем используйте один из методов сбора для преобразования массива Int в строку.

Попробуйте что-то вроде этого:

let temp = json.value(forKeyPath: "data.current_condition.temp_F") as! [Int]
TempLabel.text = temp.map({ "\($0)" }).joined(separator: ", ")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...