Paging indicator widgets that are compatible with the
ViewPager from the
Android Support Library to improve discoverability of content.
For Material Design look at PagerSlidingTabStrip
For a working implementation of this project see the
Include one of the widgets in your view. This should usually be placed adjacent to the
<dk.ostebaronen.droid.viewpagerindicator.TitlePageIndicator android:id="@+id/titles" android:layout_height="wrap_content" android:layout_width="fill_parent" />
OnCreateViewfor a fragment), bind the indicator to the
//Set the pager with an adapter var pager = FindViewById<ViewPager>(Resource.Id.pager); pager.Adapter = new TestAdapter(SupportFragmentManager); //Bind the title indicator to the adapter var titleIndicator = FindViewById<TitlePageIndicator>(Resource.Id.titles); titleIndicator.SetViewPager(pager);
(Optional) If you want to listen for a
PageChangeevent, you should use it on the
ViewPagerIndicator, rather than setting an
ViewPager, otherwise the
ViewPagerIndicatorwill not update.
//continued from above titleIndicator.PageChange += MyPageChangeEventHandler;
There are three ways to style the look of the indicators.
- Theme XML. An attribute for each type of indicator is provided in which you can specify a custom style.
- Layout XML. Through the use of a custom namespace you can include any desired styles.
- Object methods. Both styles have Properties 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
ViewPagerIndicator is an Android Library project, which you can reference in your Android Project.
This project depends on the
ViewPager class which is available in the
Android Support Library.
Ported to Xamarin.Android By
- Tomasz Cielecki
Originally Developed By
- Jake Wharton - firstname.lastname@example.org
Copyright 2013 Tomasz Cielecki Copyright 2012 Jake Wharton Copyright 2011 Patrik Åkerfeldt Copyright 2011 Francisco Figueiredo Jr. 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.