# jakewharton/viewpagerindicator

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/jakewharton-viewpagerindicator).**

10,061 stars · 3,935 forks · Java · archived

## Links

- GitHub: https://github.com/JakeWharton/ViewPagerIndicator
- Homepage: http://viewpagerindicator.com
- awesome-repositories: https://awesome-repositories.com/repository/jakewharton-viewpagerindicator.md

## Description

ViewPagerIndicator is a set of reusable Android UI components designed to synchronize visual paging indicators with paginated view containers. It provides widgets that track a ViewPager to display the current page position and total page count.

The project enables the customization of these indicators through themes, XML layout attributes, and direct method calls to align the visual appearance with an application's design.

These components handle the dynamic generation of view elements based on page count and use scroll-position interpolation to animate transitions between active indicators. The system is built for compatibility with the Android Support Library and legacy ActionBarSherlock environments.

## Tags

### Mobile Development

- [Paging Indicators](https://awesome-repositories.com/f/mobile-development/android-ecosystem/paging-indicators.md) — Provides visual widgets that display the current page and total count in an Android paginated view. ([source](https://github.com/jakewharton/viewpagerindicator#readme))
- [Android UI Components](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-ui-components.md) — Implements a reusable interface widget designed to enhance navigation and content discovery on Android.

### User Interface & Experience

- [Content Display Components](https://awesome-repositories.com/f/user-interface-experience/content-display-components.md) — Displays the current page position within a paginated view to help users discover content. ([source](https://github.com/jakewharton/viewpagerindicator#readme))
- [Pagination Indicators](https://awesome-repositories.com/f/user-interface-experience/progress-indicators/pagination-indicators.md) — Adds visual markers to show the current page position and total count within a paginated layout.
- [Attribute Overrides](https://awesome-repositories.com/f/user-interface-experience/component-utilities/ui-frameworks/component-apis/interface-configuration-definitions/component-attributes/attribute-overrides.md) — Provides XML attributes and theme overrides to customize the visual appearance of indicator dots.
- [Adapter Based Mappings](https://awesome-repositories.com/f/user-interface-experience/data-view-customizers/adapter-based-mappings.md) — Implements logic to map the data structure of a paging adapter to visual indicator components.
- [Dynamic Indicator Generation](https://awesome-repositories.com/f/user-interface-experience/navigation-components/view-pagers/dynamic-indicator-generation.md) — Automatically generates the correct number of indicator views based on the total page count.
- [Scroll Indicator Styling](https://awesome-repositories.com/f/user-interface-experience/scroll-indicator-styling.md) — Allows customizing the appearance, sizing, and themes of navigation indicators. ([source](https://github.com/jakewharton/viewpagerindicator#readme))

### Web Development

- [UI State Synchronization](https://awesome-repositories.com/f/web-development/state-update-handlers/state-synchronization-handlers/ui-state-synchronization.md) — Synchronizes the visual state of paging indicators with the current index of a ViewPager.

### Software Engineering & Architecture

- [Scroll-Driven Visual Transformations](https://awesome-repositories.com/f/software-engineering-architecture/scroll-position-event-triggers/scroll-driven-visual-transformations.md) — Calculates fractional offsets to animate the transition of the active indicator during scrolling.

### Part of an Awesome List

- [User Interface Components](https://awesome-repositories.com/f/awesome-lists/devtools/user-interface-components.md) — Support for horizontally scrolling ViewPager.
