2015-02-02 49 views
13

Tôi có một UIImageView với một Animation và, trong UIView, tôi áp dụng hiệu ứng fadeIn, nhưng tôi cần phải áp dụng mờ dần khi UIImageView, được làm động, khi được chạm vào.Làm mờ dần và làm mờ trong Animation Swift

Đây là những gì tôi làm cho mờ dần trong

UIView.animateWithDuration(0.5, delay: delay, 
    options: UIViewAnimationOptions.CurveEaseOut, animations: { 
     uiImageView.alpha = 1.0 
     } 
+0

Vấn đề của bạn là bạn không thể làm cho chế độ xem hình ảnh mờ đi nếu bạn kích hoạt nó trong thời gian mờ dần trong hoạt ảnh? –

Trả lời

40

Đây là những gì tôi sẽ làm dựa trên nghiên cứu của tôi:. (Giả sử bạn đang sử dụng storyboard)

  1. Tới UIImageView của bạn và trong Thuộc tính, chọn hộp kiểm "Tương tác người dùng đã bật".

  2. Kéo TapGestureRecognizer ở đầu chế độ xem hình ảnh.

  3. Kiểm soát nhấp vào Nhấn Cử chỉ và kéo để thực hiện hành động trên ViewControler.swift của bạn.

  4. Thêm mã sau bên trong:

    UIView.animateWithDuration(0.5, delay: 0.5, options: .curveEaseOut, animations: { 
        self.uiImageView.alpha = 0.0 
        }, completion: nil) 
    

Sau đó, bạn đã hoàn tất!

+0

Giá trị nào tôi cần trong thời gian trễ? – PlugInBoy

+0

@PlugInBoy Tôi đã chỉnh sửa khối mã trong câu trả lời của mình. Điều đó sẽ hoạt động tốt. – AntiStrike12

5

Bắt đầu từ iOS 10 Apple ra mắt mới iOS Animations SDK mạnh hơn rất nhiều, đặc biệt là về chức năng thời gian và tương tác.

Fade ra mã với cách tiếp cận này sẽ:

UIViewPropertyAnimator(duration: 0.5, curve: .easeOut, animations: { 
    self.uiImageView.alpha = 0.0 
}).startAnimation() 

Để biết thêm chi tiết về tài sản Animator, hãy nhìn vào iOS 10 Animations demo.

Các vấn đề liên quan