Paging indicator widget compatible with the ViewPager from the Compatibility Library and ActionBarSherlock. Ported and enhanced from Patrik Åkerfeldt's ViewFlow.
Clone or download
Pull request Compare This branch is 118 commits behind JakeWharton:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Android ViewPagerIndicator

Port of Patrik Åkerfeldt's paging indicators that are compatible with the ViewPager from the Android Compatibility Library and ActionBarSherlock.

Try out the sample application on the Android Market.

ViewPagerIndicator Sample Screenshots


For a working implementation of this project see the sample/ folder.

  1. Include one of the widgets in your view. This should usually be placed adjacent to the ViewPager it represents.

    <com.viewpagerindicator.TitlePageIndicator android:id="@+id/titles" android:layout_height="wrap_content" android:layout_width="fill_parent" />

  2. In your onCreate method (or onCreateView for a fragment), bind the indicator to the ViewPager.

    //Set the pager with an adapter
    ViewPager pager = (ViewPager)findViewById(;
    pager.setAdapter(new TestAdapter(getSupportFragmentManager()));
    //Bind the title indicator to the adapter
    TitlePageIndicator titleIndicator = (TitlePageIndicator)findViewById(;

    Note: If you are using TitlePageIndicator your adapter must implement TitleProvider.

  3. (Optional) If you use an OnPageChangeListener with your view pager you should set it in the indicator rather than on the pager directly.

    //continued from above


There are three ways to style the look of the indicators.

  1. Theme XML. An attribute for each type of indicator is provided in which you can specify a custom style.
  2. Layout XML. Through the use of a custom namespace you can include any desired styles.
  3. Object methods. Both styles have getters and setters for each style attribute which can be changed at any point.

Each indicator has a demo which creates the same look using each of these methods.

Including In Your Project

Android-ViewPagerIndicator is presented as an Android library project. A standalone JAR is not possible due to the theming capabilities offered by the indicator widgets.

You can include this project by referencing it as a library project in Eclipse or ant.

If you are a Maven user you can easily include the library by specifying it as a dependency:


You must also include the following repository:


This project depends on the ViewPager class which is available in the Android Compatibility Library or ActionBarSherlock. Details for including one of those libraries is available on their respecitve web sites.

Developed By



Copyright 2011 Patrik Åkerfeldt
Copyright 2011 Francisco Figueiredo Jr.
Copyright 2011 Jake Wharton

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

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.