I hereby claim:
- I am mackis on github.
- I am mdevsa (https://keybase.io/mdevsa) on keybase.
- I have a public key ASC1AIL2E16t6e0qCo0G0M-Nr5rZcWrUoxYyTwG04-HMago
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
| public extension UIImageView { | |
| public func loadImage(fromURL url: String) { | |
| guard let imageURL = URL(string: url) else { | |
| return | |
| } | |
| let cache = URLCache.shared | |
| let request = URLRequest(url: imageURL) | |
| DispatchQueue.global(qos: .userInitiated).async { | |
| if let data = cache.cachedResponse(for: request)?.data, let image = UIImage(data: data) { |
| import UIKit | |
| public class MDVUnderlineAnimator: MDVTabBarAnimatable { | |
| private var underlineColor: UIColor = .clear | |
| private var underlineHeight: CGFloat = 0 | |
| private var xPosition: CGFloat = 0 | |
| private var yPositionOffset: CGFloat = 0 | |
| private var containerWidth: CGFloat = 0 | |
| private var underlineView: UIView = UIView(frame: .zero) |
| class MainViewController: UIViewController { | |
| var networkManager: NetworkManager! | |
| init(networkManager: NetworkManager) { | |
| super.init(nibName: nil, bundle: nil) | |
| self.networkManager = networkManager | |
| } | |
| required init?(coder aDecoder: NSCoder) { |
| import Foundation | |
| enum NetworkEnvironment { | |
| case qa | |
| case production | |
| case staging | |
| } | |
| public enum MovieApi { |
| import Foundation | |
| struct MovieApiResponse { | |
| let page: Int | |
| let numberOfResults: Int | |
| let numberOfPages: Int | |
| let movies: [Movie] | |
| } | |
| extension MovieApiResponse: Decodable { |
| { | |
| "vote_count": 78, | |
| "id": 374430, | |
| "video": false, | |
| "vote_average": 8.8, | |
| "title": "Black Mirror: White Christmas", | |
| "popularity": 3.055805, | |
| "poster_path": "/he609rnU3tiwBjRklKNa4n2jQSd.jpg", | |
| "original_language": "en", | |
| "original_title": "Black Mirror: White Christmas", |
| import UIKit | |
| protocol NibLoadableView: class { } | |
| extension NibLoadableView { | |
| static var nibName: String { | |
| return String(describing: self) | |
| } | |
| import UIKit | |
| protocol ReusableView: class {} | |
| extension ReusableView { | |
| static var reuseIdentifier: String { | |
| return String(describing: self) | |
| } | |
| } |
| // Labels | |
| private lazy var timeLabel: UILabel = { | |
| let l = UILabel() | |
| l.textColor = .white | |
| l.font = Theme.fonts.futuraMedium(size: 70) | |
| let date = Date() | |
| return l | |
| }() | |
| private lazy var dateLabel: UILabel = { |