- EmptyCityPage : page which is displayed when the user first opens the app or when there are no cities added the user's preferences list. (information message and add button)
- AddCityActivity : enables a user to add the city of his/her choice.
- CityDetailActivity : enables the user to view a city’s weather details when he/she clicks on the city he/she added and enables the user to delete that city from his/her list (menu option and a pop up warning message ). This activity also contains the part of the code calling the API (open weather map).
- CitiesACtivity : enables to display the list of cities added by the user (contains also an add button).
and contains the following xml layouts :
- activity_empty_city_page.xml
- activity_add_city.xml
- activity_city_detail.xml
- activity_cities.xml
- viewholder_city.xml
- Adapter
- Database
- Dao
- Retrofit instance (and the needed business objects)
- Interface (that describes the HTTP requests needed)
- JSON Parser (Moshi)
- Interceptor
The app also has a customized icon.
- Add a city of your choice
- View weather details (temperature, feels like, min tempreature , max temperature) of a city
- Delete a city that has been added (with a warning pop up message customized for each city)
- When deleting a city, you come back to the home page which is either the list of your other added cities, or if that is list is empty, the inital home page with a message telling you to add cities