2016-09-25 21 views
8

Làm cách nào để thực hiện một khối hoàn thành đơn giản trong Swift 3?UIView.animate - Swift 3 - hoàn thành

Tôi muốn thiết self.isOpen = true trong việc hoàn thành các hình ảnh động:

  UIView.animate(withDuration: 0.25, delay: 0.0, options: [], animations: { 
       self.isOpen = true 
       self.drawerView?.frame = CGRect(x: 0, y: 0, width: (self.drawerView?.frame.size.width)!, height: (self.drawerView?.frame.size.height)!) 
       self.contentView?.frame = CGRect(x: 200, y: 0, width: (self.contentView?.frame.size.width)!, height: (self.contentView?.frame.size.height)!) 
      }, completion: nil) 

Trong qua:

Nó khá bất khả thi để học Swift 3 atm do NOTHING trên liên mạng :(


Tôi cũng đã tìm kiếm toàn bộ tài liệu này ngay cả khi đề cập đến từ "động" và không thể tìm thấy bất cứ điều gì:

https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097-CH3-ID0

+1

Trong tương lai: Sau khi tự động tạo hàm .animate (...), bấm đúp vào dấu được tô đậm ((Bool) -> Void)? trình giữ chỗ của trình chỉnh sửa và cấu trúc của khối ẩn danh sẽ chuẩn bị :) – Muli

Trả lời

49

Bạn thêm nó như thế này:

UIView.animate(withDuration: 0.25, delay: 0.0, options: [], animations: { 
    self.drawerView?.frame = CGRect(x: 0, y: 0, width: (self.drawerView?.frame.size.width)!, height: (self.drawerView?.frame.size.height)!) 
    self.contentView?.frame = CGRect(x: 200, y: 0, width: (self.contentView?.frame.size.width)!, height: (self.contentView?.frame.size.height)!) 
}, completion: { (finished: Bool) in 
    self.isOpen = true 
}) 
+0

Cảm ơn một nhóm! "Gợi ý" của họ quá khó hiểu để hiểu thực tế những gì cần viết ... và thiếu tài liệu, và số tiền quá cao của mã swift2.2 không hoạt động là khá bực bội: ( –

+0

hoạt hình là tuyệt vời nhưng làm sao tôi có thể giống nhau bố trí đẩy xuống trong nút bấm? – pmb

-2

Viết nó như dưới đây mã:

UIView.animate(withDuration: 0.5, delay: 0, usingSpringWithDamping: 1, initialSpringVelocity: 1, options: .curveEaseOut, animations: { 

// code 

}) 
+0

Câu trả lời này không chứa một khối hoàn thành đó là những gì các câu hỏi được gọi. – frakman1