swift - 几秒钟后添加一个 subview

标签 swift

我有这个代码:

 UIView.animateWithDuration(0.6, delay: 5.0, usingSpringWithDamping: 0.6, initialSpringVelocity: 3.0, options: nil, animations: {

     self.view.addSubview(self.label!)

},completion: nil)

但是标签好像不是5.0秒后才放的。在应用程序中,您会立即看到它。

如何解决标签在5秒后放置的问题?

最佳答案

请记住,使用 animateWithDuration() -(在 MVC 模式中) - View 动画需要时间来执行,但模型会立即更改,而不是在给定的持续时间之后。

使用这个函数

func delay(delay:Double, closure:()->()) {
        dispatch_after(
            dispatch_time(
                DISPATCH_TIME_NOW,
                Int64(delay * Double(NSEC_PER_SEC))
            ),
            dispatch_get_main_queue(), closure)
}

例如在一定延迟后添加一个 subview :

delay(5.0, closure: {self.view.addSubview(self.label!)})

关于swift - 几秒钟后添加一个 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31893935/

相关文章:

swift - JWT 验证算法 RSA 256 总是出错

ios - Create Circle Image View IOS问题

Swift:如何在包含多个单元格的 TableViewController 中设置动态单元格高度

objective-c - 如何在 Swift 项目中强制执行 `Xcode-generated header` ...(从 Obj-C 调用 Swift)

ios - 如何管理 Podfile - iPhone、iPad 和 Mac 10.15 的部署

Swift 将协议(protocol)类型转换为 struct 并作为 inout 传递

json - 字母数字 ID 未映射但给出 Nil 输出

ios - UIAlertView 使应用程序崩溃

swift - 在 Swift 中从解析中检索图像

ios - 在启用分页的情况下将 TableView 添加到 ScrollView 。