- (5pts) User can tap a cell to see more details about a particular movie.
- (5pts) User can tap a tab bar button to view a grid layout of Movie Posters using a CollectionView.
- (2pts) User can tap a poster in the collection view to see a detail screen of that movie.
- (2pts) In the detail view, when the user taps the poster, a new screen is presented modally where they can view the trailer.
Describe any challenges encountered while building the app.
Flix is an app that allows users to browse movies from the The Movie Database API.
let url = URL(string: "https://api.themoviedb.org/3/movie/now_playing?api_key=a07e22bc18f5cb106bfe4cc1f83ad8ed")!
let request = URLRequest(url: url, cachePolicy: .reloadIgnoringLocalCacheData, timeoutInterval: 10)
let session = URLSession(configuration: .default, delegate: nil, delegateQueue: OperationQueue.main)
let task = session.dataTask(with: request) { (data, response, error) in
// This will run when the network request returns
if let error = error {
print(error.localizedDescription)
} else if let data = data {
let dataDictionary = try! JSONSerialization.jsonObject(with: data, options: []) as! [String: Any]
// TODO: Get the array of movies
// TODO: Store the movies in a property to use elsewhere
// TODO: Reload your table view data
}
}
task.resume()
- (2pts) User sees an app icon on the home screen and a styled launch screen.
- (5pts) User can view and scroll through a list of movies now playing in theaters.
- (3pts) User can view the movie poster image for each movie.
- (2pt) User can view the app on various device sizes and orientations.
- (1pt) Run your app on a real device.
- (1pt) Owns android device.
I can not run on a physical device because I do not own a physical device and this is not a hybrid application, which means the users are limited to those who own an ios device.