Movie Manager shows the latest movies currently playing in theaters and the upcoming movies. The app displays images and basic information about these movies to the user.
- Recyclerview, Adapter & ViewHolder
- Fragments
- Material design elements
- Floating Action Button
- Snackbar
- App bar y Toolbar
- Coordinator Layout
- Navigation
- Drawer
- UI Testing with Espresso
The following required functionality is completed:
- User can scroll through current movies and upcoming movies
- Layout is optimized with the ViewHolder pattern.
- For each movie displayed, user can see the following details:
- Title, Poster Image, Overview (Portrait mode)
- User interface improved through styling and coloring and using material design elements such as CardView and Navigation Drawer
- The app is using Espresso to test the UI interactions.
The following bonus features are implemented:
- Allow user to view details of the movie including ratings and popularity within a separate activity.
- The app implement the popular Butterknife annotation library to reduce boilerplate code.
- All the values for dimensions are specified in dimens.xml
- All the string values are specified in strings.xml
####Functionality
- The code runs without errors.
- Each percentage button updates the TextViews by adding the correct new values.
- The reset button resets the scores on both of the score TextViews.
####Code Readability
- Any classes are named after the object they represent.All variables are named by their intended contents. All methods are named by their intended effect or in the style required by a callback interface.
- "There are no unnecessary blank lines. One variable is declared per declaration line. The code within a method is indented with respect to the method declaration line."
Here's a walkthrough of implemented user stories:
GIF created with LiceCap.
- Butterknife annotation library - Field and method binding for Android views
- Picasso - Image loading and caching library for Android
