Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/ramotion/garland-view-android

:octocat: ≡ GarlandView seamlessly transitions between multiple lists of content. Made by @Ramotion
https://github.com/ramotion/garland-view-android

android animation component java library material-design ui

Last synced: 21 days ago
JSON representation

:octocat: ≡ GarlandView seamlessly transitions between multiple lists of content. Made by @Ramotion

Awesome Lists containing this project

README

        


GARLAND VIEW [JAVA]

Garland View seamlessly transitions between multiple lists of content

___

We specialize in the designing and coding of custom UI for Mobile Apps and Websites.


Stay tuned for the latest updates:


[![Twitter](https://img.shields.io/badge/[email protected]?style=flat)](http://twitter.com/Ramotion)
[![Donate](https://img.shields.io/badge/Donate-PayPal-blue.svg)](https://paypal.me/Ramotion)

# Check this library on other platforms:

## Requirements
- Android 4.4 KitKat (API lvl 19) or greater
- Your favorite IDE

## Installation
Just download the package from [here](http://central.maven.org/maven2/com/ramotion/garlandview/garland-view/0.3.3/garland-view-0.3.3.aar) and add it to your project classpath, or just use the maven repo:

Gradle:
```groovy
compile 'com.ramotion.garlandview:garland-view:0.3.3'
```
SBT:
```scala
libraryDependencies += "com.ramotion.garlandview" % "garland-view" % "0.3.3"
```
Maven:
```xml

com.ramotion.garlandview
garland-view
0.3.3

```

## Basic usage

`GarlandView` consists of classes for inner items that are scrolled vertically
and outer items that are scrolled horizontally, and each of which contains
one inner item.

First of all, you need to implement the classes necessary to create internal items: InnerItem and InnerAdapter.

`InnerAdapter` is an abstract class inherited from RecyclerView.Adapter.
It works only with InnerItem - ViewHolder.

In `InnerItem`, you need to override the `getInnerLayout` method, which must return
the main layout of the inner item.

Next, you need to override the classes required for external items: `HeaderItem` and` HeaderAdapter`.

`HeaderAdapter` is an abstract class inherited from RecyclerView.Adapter,
It works only with HeaderItem - ViewHolder.

In `HeaderItem`, you need to redefine 4 methods:` getHeader`, `getHeaderAlphaView`,` isScrolling`, `getViewGroup`.
The method `getViewGroup` should return InnerRecyclerView.
The `isScrolling` method must return the InnerRecyclerView's scrolling state.
The `getHeaderAlpha` method should return an alpha-layout, which will be used for dimming (hiding header's views).
The `getHeader` method must return the main layout of the header, an outer item.

Finally, place `TailRecyclerView` in the Activity's layout. Next, create a TailLayoutManager and
specify it as a LayoutManager for `TailRecyclerView`.

Here are the attributes of `TailRecyclerView` you can specify in the XML layout:
* `itemStart` - Outer item left and right offset size.
* `itemGap` - Distance between outer items.


## 🗂 Check this library on other language:

## 📄 License

Garland View Android is released under the MIT license.
See [LICENSE](./LICENSE) for details.

This library is a part of a selection of our best UI open-source projects

If you use the open-source library in your project, please make sure to credit and backlink to www.ramotion.com

## 📱 Get the Showroom App for Android to give it a try
Try this UI component and more like this in our Android app. Contact us if interested.