ios - 使用 NSTimeInterval 创建 dispatch_time_t

标签 ios swift

我有一个 NSTimeInterval 值,我需要用它创建一个 dispatch_time_t 值。这是我尝试过的:

let timeInterval : NSTimeInterval = getTimeInterval()

//ERROR: Binary operator '*' cannot be applied to operands of type 'NSTimeInterval' and 'UInt64'
let dispatch_time = dispatch_time(DISPATCH_TIME_NOW, Int64(timerInterval * NSEC_PER_SEC))

我理解这个错误消息,但我不知道如何摆脱它。有人可以提供一些建议吗?如何使用 NSTimeInterval 创建一个 dispatch_time 实例?谢谢!

最佳答案

let delayTime = dispatch_time(DISPATCH_TIME_NOW,
    Int64(0.3 * Double(NSEC_PER_SEC)))

dispatch_after(delayTime, dispatch_get_main_queue()) {
    //... Code
}

你可以试试这个,这对我来说很好。

在您的代码中,只需将最后一行替换为:

let d_time = dispatch_time(DISPATCH_TIME_NOW, Int64(timeInterval * Double(NSEC_PER_SEC)))

关于ios - 使用 NSTimeInterval 创建 dispatch_time_t,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32479285/

相关文章:

ios - iOS 中的 Firebase 云消息传递有问题吗?

ios - 使用核心数据调用 NSPredicate 中对象的方法

swift - 为 TableView 启用 3D Touch 预览

ios - 动态 UIViewCell 垂直单元格滚动与水平 UICollectionViewFlowLayout

ios - UITableViewController 仅在离开并返回 UITableViewController 后才在页面顶部留下空间

ios - swift 3.0 错误 "Cannot convert value of type"

javascript - 使用 Javascript 处理 HTML 和 Swift 之间的交互

ios - dyld : Library not loaded: @rpath/MyDSK. 框架/MyDSK -> SWIFT iOS 8.0

swift - 如何在 swift 中逐行突出显示 UITextView 的文本?

ios - 变量/常量声明差异