diff --git a/README.md b/README.md index 76ae62b..19aa47a 100644 --- a/README.md +++ b/README.md @@ -1,58 +1,88 @@ -Android PagerSlidingTabStrip -============================ +# Android PagerSlidingTabStrip Interactive paging indicator widget, compatible with the `ViewPager` from the Android Support Library. -Try out the sample application [on the Play Store][3]. +Try out the sample application [on the Play Store](https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample). -![PagerSlidingTabStrip Sample Screenshot 1][4] ![PagerSlidingTabStrip Sample Screenshot 2][5] +![PagerSlidingTabStrip Sample Screenshot 1](https://lh3.ggpht.com/PXS7EmHhQZdT1Oa379iy91HX3ByWAQnFZAthMAFa_QHAOHNClEaXU5nxDEAj1F2eqbk)![PagerSlidingTabStrip Sample Screenshot 2](https://lh3.ggpht.com/oaksDoUcQlGB4j7VEkBCOjrvSzjtzVHHcKq8pAnGVfm6oxkcJg_w1QS4tyP3fLcqrwcX) -Usage -===== +# Usage *For a working implementation of this project see the `sample/` folder.* - 1. Include the PagerSlidingTabStrip widget in your view. This should usually be placed - adjacent to the `ViewPager` it represents. + 1. Include the library as local library project or add the dependency in your build.gradle. + + dependencies { + compile 'com.astuetz:pagerslidingtabstrip:1.0.1' + } - - 2. In your `onCreate` method (or `onCreateView` for a fragment), bind the + 3. In your `onCreate` method (or `onCreateView` for a fragment), bind the widget to the `ViewPager`. - // Set the pager with an adapter + // Initialize the ViewPager and set an adapter ViewPager pager = (ViewPager) findViewById(R.id.pager); pager.setAdapter(new TestAdapter(getSupportFragmentManager())); - - // Bind the widget to the adapter + + // Bind the tabs to the ViewPager PagerSlidingTabStrip tabs = (PagerSlidingTabStrip) findViewById(R.id.tabs); tabs.setViewPager(pager); - 3. *(Optional)* If you use an `OnPageChangeListener` with your view pager + 4. *(Optional)* If you use an `OnPageChangeListener` with your view pager you should set it in the widget rather than on the pager directly. // continued from above tabs.setOnPageChangeListener(mPageChangeListener); +# Customization + +To not just look like another Play Store styled app, go and adjust these values to match +your brand: + + * `pstsIndicatorColor` Color of the sliding indicator + * `pstsUnderlineColor` Color of the full-width line on the bottom of the view + * `pstsDividerColor` Color of the dividers between tabs + * `pstsIndicatorHeight`Height of the sliding indicator + * `pstsUnderlineHeight` Height of the full-width line on the bottom of the view + * `pstsDividerPadding` Top and bottom padding of the dividers + * `pstsTabPaddingLeftRight` Left and right padding of each tab + * `pstsScrollOffset` Scroll offset of the selected tab + * `pstsTabBackground` Background drawable of each tab, should be a StateListDrawable + * `pstsShouldExpand` If set to true, each tab is given the same weight, default false + * `pstsTextAllCaps` If true, all tab titles will be upper case, default true + +*All attributes have their respective getters and setters to change them at runtime* + +# Changelog + +### Current Version: 1.0.1 -Developed By -============ +### [1.0.1](https://github.com/astuetz/PagerSlidingTabStrip/tree/v1.0.1) + + * Upgraded gradle build files + * Changed package name to `com.astuetz.PagerSlidingTabStrip` + * [#37](https://github.com/astuetz/PagerSlidingTabStrip/pull/37), [#41](https://github.com/astuetz/PagerSlidingTabStrip/pull/41) Added `psts` prefix to all attributes in `attrs.xml` + * [#46](https://github.com/astuetz/PagerSlidingTabStrip/pull/46) Changed the shouldExpand behavior to set the layout at the time the tab is added + +# Developed By * Andreas Stuetz - -Credits -------- +### Credits - * [Kirill Grouchnikov][1] - Author of [an explanation post on Google+][2] + * [Kirill Grouchnikov](https://plus.google.com/108761828584265913206/posts) - Author of [an explanation post on Google+](https://plus.google.com/108761828584265913206/posts/Cwk7joBV3AC) -License -======= +# License Copyright 2013 Andreas Stuetz @@ -67,13 +97,3 @@ License 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. - - - - - - [1]: https://plus.google.com/108761828584265913206/posts - [2]: https://plus.google.com/108761828584265913206/posts/Cwk7joBV3AC - [3]: https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample - [4]: https://lh3.ggpht.com/PXS7EmHhQZdT1Oa379iy91HX3ByWAQnFZAthMAFa_QHAOHNClEaXU5nxDEAj1F2eqbk - [5]: https://lh3.ggpht.com/oaksDoUcQlGB4j7VEkBCOjrvSzjtzVHHcKq8pAnGVfm6oxkcJg_w1QS4tyP3fLcqrwcX \ No newline at end of file