2016-05-13 1 views
1

Так что я использую CZWeatherKit library для получения данных о погоде от forecast.io.Получение изображений Climacons в UILabel с CZWeatherKit в Swift

Когда я получаю результаты, он отправляет клик UInt8 климака, который должен соответствовать значку, если установлен climacon font. Я сделал это, но он показывает только символ, а не фактический значок. Вот код, он печатает цитаты т.е. ", которая является correct mapping к ClimaconCloudSun, но значок не отображается. Я последовал these instructions установить climacons.ttf шрифт

request.sendWithCompletion { (data, error) -> Void in 
     if let error = error { 
      print(error) 
     } else if let weather = data { 
      let forecast = weather.dailyForecasts.first as! CZWeatherForecastCondition 
      dispatch_async(dispatch_get_main_queue(), {() -> Void in 

       // I get back good results, this part works 
       let avgTempFloat = (forecast.highTemperature.f + forecast.lowTemperature.f)/2 
       let avgTemp = NSDecimalNumber(float: avgTempFloat).decimalNumberByRoundingAccordingToBehavior(rounder) 
       self.temperatureLabel.text = String(avgTemp) 
       self.weatherLabel.text = forecast.summary 

       // this part does not work, it has the right char, but does not display icon 
       // I tried setting self.climaconLabel.font = UIFont(name: "Climacons-Font", size: 30) both in IB and programmatically 
       let climaChar = forecast.climacon.rawValue 
       let climaString = NSString(format: "%c", climaChar) 
       self.climaconLabel.text = String(climaString) 
      }) 
     } 
    } 

ответ

0

Вы, вероятно, перешли от эта проблема до сих пор, но я оставлю это здесь для дальнейшего использования.

На метке вам нужно позвонить setNeedsLayout после того, как вы измените текст заголовка на нужное значение, и метка изменится на соответствующий значок.

Смежные вопросы