1
これは私を狂ってしまいます。Swift 3 - Label.TextへのDateComponentsは時には "..."を表示します
私は現在の時刻と設定時刻の2倍の差異を見つけようとしていますが、最終的にサーバーから取得されます。
これはパラメータがない瞬間にはgetTimeDifference()
の機能です。
let formatter = DateFormatter()
let userCalender = Calendar.current;
let requestedComponent : Set<Calendar.Component> = [.month,.day,.hour,.minute,.second]
public func getTimeDifference() -> DateComponents
{
formatter.dateFormat = "MM/dd/yyyy hh:mm:ss a"
let _startTime = Date()
let _endTime = formatter.date(from: "12/05/2016 14:01:00 a")
let timeDifference = userCalender.dateComponents(requestedComponent, from: _startTime, to: _endTime!)
return timeDifference
}
この
は、私はこのコードを実行し、これまでそれはしかし、間隔のいくつかは、それが表示されます数秒のために完全に正常に動作するとき、私は私のHomepageViewController@IBOutlet weak var labelHours: UILabel!
@IBOutlet weak var labelMinutes: UILabel!
@IBOutlet weak var labelSeconds: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(updateCountdown), userInfo: nil, repeats: true).fire()
// Do any additional setup after loading the view.
}
func updateCountdown() -> Void {
let time = Countdown().getTimeDifference()
labelHours.text = time.hour?.description
labelMinutes.text = time.minute?.description
labelSeconds.text = time.second?.description
}
をして持っているものである...
疑問符(?)は、画像abを生成します。オベと(?)を削除するには、...
labelHours.text = time.hour?.description
labelMinutes.text = time.minute?.description
labelSeconds.text = time.second?.description
labelHours.text = time.hour.description
labelMinutes.text = time.minute.description
labelSeconds.text = time.second.description
各UILabelの幅は2桁で十分ですか? (たとえば、「24」は「11」よりも幅が必要です)。 – OOPer