Skip to content

Display images in a staggered grid layout, download an image using Download Manager

License

Notifications You must be signed in to change notification settings

sooshin/android-image-gallery

Repository files navigation

ImageGallery

ic_launcher

Project Overview

Image Gallery displays a gallery of the image in a staggered grid layout, and when you tap the image, it gives you the detail of each image. You can also download images by tapping download button.

This app uses images from pixabay.com

Screenshots

img_gallery_01 img_gallery_02

Image Resources

Icon made by Dave Gandy from www.flaticon.com

Icon made by Freepik from www.flaticon.com

Libraries

  • Android Architecture Components

    • Paging - Load and display small chunks of data at a time.
    • Lifecycles - Create a UI that automatically responds to lifecycle events.
    • ViewModel - Store UI-related data that isn't destroyed on app rotations. Easily schedule asynchronous tasks for optimal execution.
    • LiveData - Build data objects that notify views when the underlying database changes.
    • Navigation - Handle everything needed for in-app navigation.
    • Data Binding - Declaratively bind observable data to UI elements.
  • Retrofit for REST api communication

  • Moshi for parsing JSON into Kotlin objects

  • Glide for image loading

  • Kotlin Coroutines for managing background threads with simplified code and reducing needs for callbacks.

License

Apache, see the LICENSE file.

Copyright 2019 Soojeong Shin

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Releases

No releases published

Packages

No packages published

Languages