Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chengdazhi/DecentBanner

Flipboard's ViewPager-based Android Banner that supports auto scrolling and decent animation
https://github.com/chengdazhi/DecentBanner

Last synced: about 1 month ago
JSON representation

Flipboard's ViewPager-based Android Banner that supports auto scrolling and decent animation

Awesome Lists containing this project

README

        

# DecentBanner

[![Android Arsenal](https://img.shields.io/badge/Android%20Arsenal-DecentBanner-brightgreen.svg?style=flat)](https://android-arsenal.com/details/1/3985)

![sample](./images/decent_sample.gif)

To try out the sample, download the apk from [chengdazhi.com/decentbanner](http://chengdazhi.com/decentbanner) or scan the following QR code:

![qrcode](./images/decent_qr.png)

## Features

* Smooth buoy movement animation and title opacity animation.

* You can choose to enable logo at the top left corner.

* Compatible to banners with less than three items.

* You can specify the auto scroll interval and animation duration.

* public methods to start and stop auto scroll.

* Infinite loop.

## Import

Maven


it.chengdazhi.decentbanner
decentbanner
1.0.7
pom

Gradle

dependencies {
compile 'it.chengdazhi.decentbanner:decentbanner:1.0.7'
}

## Usage

* To initiate your DecentBanner, first acquire DecentBanner instance mDecentBanner in Java or XML, then:

```java
/**
* @param views the list of views that you want to include in the banner
* @param titles the list of titles that appears as tabs at the bottom
* @param intervalSeconds the interval of auto scrolling, set to 2 in sample
* @param animationMillis the scrolling's animation time, set to 500 in sample
* @param int logoResourceId | Bitmap logoBitmap the logo you want to display.
You can skip this param if you don't want it.
*/
mDecentBanner.start(List views, List titles, int intervalSeconds,
int animationMillis[, int logoResourceId | Bitmap logoBitmap]);
```

* Note that when you want to show less than 3 views, you need to extend the views to be no less than three items. When you want to display 2 views, your titles param should contain 2 items and your views param should contain 4 items as ABAB

* You can call the following two methods to start/stop auto scrolling.

```java
mDecentBanner.startAutoPlay();
mDecentBanner.stopAutoPlay();
```

* You can call these method to enable/disable gradient cover or to query whether the cover is enabled

```java
mDecentBanner.setGradientEnabled(boolean enabled);
mDecentBanner.isGradientEnabled();
```

## License

Copyright 2016 chengdazhi

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.