Due to the best practices we applied to the course, it takes a minimal effort to update our project to Swift 4.
In Swift 4
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { print("did Finish Picking Media") if let image = info["UIImagePickerControllerOriginalImage"] as? UIImage{ selectedImage = image profileImage.image = image } dismiss(animated: true, completion: nil) } func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { UITabBar.appearance().tintColor = .black FirebaseApp.configure() return true } UIImage.JPEGRepresentation(profileImg, 0.1) UICollectionElementKindSectionHeader NSNotification.Name.UIKeyboardWillShow NSNotification.Name.UIKeyboardWillHide UIKeyboardFrameEndUserInfoKey UIPageViewControllerNavigationDirection.forward imageGenerator.copyCGImage(at: CMTimeMake(7, 1), actualTime: nil) NSAttributedStringKey UIControlEvents NSAttributedStringKey UITableViewAutomaticDimension
In Swift 4.2
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) { if let image = info[UIImagePickerController.InfoKey.originalImage] as? UIImage{ selectedImage = image profileImage.image = image } dismiss(animated: true, completion: nil) } func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { UITabBar.appearance().tintColor = .black FirebaseApp.configure() return true } profileImg.jpegData(compressionQuality: 0.1) UICollectionView.elementKindSectionHeader UIResponder.keyboardWillShowNotification UIResponder.keyboardWillHideNotification UIResponder.keyboardFrameEndUserInfoKey UIPageViewController.NavigationDirection.forward imageGenerator.copyCGImage(at: CMTimeMake(value: 7, timescale: 1), actualTime: nil) NSAttributedString.Key UIControl.Event UITableView.automaticDimension
The source code is now available in Swift 4.2 and Firebase 5 SDKs compatible with the latest Xcode 10 (see lecture 96 for the Firebase 5 documentation).
12 comments