Swift: Firebase 3 – How to Play Videos with AVPlayer (Ep 21)

my review point is 10/10

https://youtu.be/4ISMTG-E3Po?t=2m28s   image view에 플레이 버튼 만들기 

https://youtu.be/4ISMTG-E3Po?t=5m54s   button에 image 넣기 ( 버튼obj.setImage() , 이미지obj.tintColor()  )

https://youtu.be/4ISMTG-E3Po?t=11m54s   play button 클릭시 플레이 구현하기

https://youtu.be/4ISMTG-E3Po?t=15m6s   연달아서 optional unwrap 하기 

https://youtu.be/4ISMTG-E3Po?t=14m10s   avplayer 를 이용 동영상 플레이하기 ( AVPlayerLayer , 유아임뷰obj.layer.addSublayer()  )

https://youtu.be/4ISMTG-E3Po?t=19m33s   스크롤시 avplayer의 플레이 내용이 다른 cell에 디스플레이 되는 것을 해결하는 방법 ( prepareForReuse )

https://youtu.be/4ISMTG-E3Po?t=22m10s   avplayer pause 

https://youtu.be/4ISMTG-E3Po?t=23m56s   when play button is clicked, progress spinner is spinning. make spinner ( UIActivityIndicatorView , 액티버티인디케이터obj.startAnimating )

try, try! & try? what’s the difference, and when to use each?

Handling non-optional optionals in Swift – John Sundell – Medium

Swift Optionals

Downcasting optionals in Swift: as? Type, or as! Type?

What’s the difference between “as?”, “as!”, and “as”?