Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 4倒数计时器NowDate-日期_Swift_Xcode - Fatal编程技术网

Swift 4倒数计时器NowDate-日期

Swift 4倒数计时器NowDate-日期,swift,xcode,Swift,Xcode,我想为2018年6月2日做一个倒计时。我该怎么做呢。当用户打开应用程序时,它应该在停止的地方继续 我决定用这个代码。其他人正在寻找相同的代码。我看到有人帮我解决了堆栈溢出问题,我完成了它 class ViewController: UIViewController { @IBOutlet weak var ayLabel: UILabel! @IBOutlet weak var gunLabel: UILabel! @IBOutlet weak var saatLabel: UILabel!

我想为2018年6月2日做一个倒计时。我该怎么做呢。当用户打开应用程序时,它应该在停止的地方继续

我决定用这个代码。其他人正在寻找相同的代码。我看到有人帮我解决了堆栈溢出问题,我完成了它

class ViewController: UIViewController {

@IBOutlet weak var ayLabel: UILabel!
@IBOutlet weak var gunLabel: UILabel!
@IBOutlet weak var saatLabel: UILabel!
@IBOutlet weak var dakikaLabel: UILabel!
@IBOutlet weak var saniyeLabel: UILabel!
@IBOutlet weak var secimGunu: UILabel!

let formatter = DateFormatter()
let userCleander = Calendar.current;
let requestedComponent : Set<Calendar.Component> = [
    Calendar.Component.month,
    Calendar.Component.day,
    Calendar.Component.hour,
    Calendar.Component.minute,
    Calendar.Component.second
]

override func viewDidLoad() {
    super.viewDidLoad()


    let timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(timePrinter), userInfo: nil, repeats: true)

    timer.fire()

}

func timeCalculator(dateFormat: String, endTime: String, startTime: Date = Date()) -> DateComponents {
    formatter.dateFormat = dateFormat
    let _startTime = startTime
    let _endTime = formatter.date(from: endTime)

    let timeDifference = userCleander.dateComponents(requestedComponent, from: _startTime, to: _endTime!)
    return timeDifference
}

@objc func timePrinter() -> Void {
   let time = timeCalculator(dateFormat: "dd/MM/yyyy HH:mm:ss a", endTime: "02/06/2018 00:00:00 a")
    ayLabel.text = "\(time.month!)"
    gunLabel.text = "\(time.day!)"
    saatLabel.text = "\(time.hour!)"
    dakikaLabel.text = "\(time.minute!)"
    saniyeLabel.text = "\(time.second!)"

}
由于问题非常广泛,最简单的解决方案是使用众多web服务之一显示倒计时,并将其保存为Safari中主页共享->添加到主屏幕的快捷方式。像这个: 如果你真的出于任何原因想要一个应用程序,最简单的选择是使用一个单一的视图应用程序在web视图中打开上面的URL

如果您确实需要编写自己的本机应用程序。然后,您需要在Xcode中创建一个单一视图应用程序,在其视图中有一个标签,在其ViewController中有一个计时器,每秒钟或任何您想要的时间段触发一次。计时器触发的事件将减少标签或显示剩余时间的方式。该应用程序还需要通过注册UIApplicationIDBecomeActivityfication来处理resume,以确保从后台恢复时,剩余时间得到更新


从这个问题来看,不清楚你到底想要什么。你是在问如何制作应用程序吗?那有点太宽了。或者如何创建在特定日期触发的计时器对象?您的意思是如何显示离世界还有多少天Cup@the4kman无需使用计时器2018年6月2日将举行选举。所以我需要一个倒计时器@Mirek@UmutCanAlparslan如果您只需要天数,可以使用日期更改通知进行更新。如果您还想显示小时、分钟和秒,则需要一个重复计时器