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

https://github.com/chilijung/android-easyspinner

Styling and manipulating data in android spinner is hard. Make it easy.
https://github.com/chilijung/android-easyspinner

android android-spinner spinner

Last synced: 10 months ago
JSON representation

Styling and manipulating data in android spinner is hard. Make it easy.

Awesome Lists containing this project

README

          

# EasySpinner
[![Release](https://jitpack.io/v/Canner/android-easyspinner.svg)](https://jitpack.io/#Canner/android-easyspinner)

Styling and manipulating data in android spinner is hard. Make it easy.

## Demo

## Install

add your `build.grade`:

```groovy
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}
dependencies {
compile 'com.github.canner:android-easyspinner:'
}
```

## Demo Spinner types

- [Horizontal Spinner](#horizontalspinner)
- [Vertical Spinner](#verticalspinner)
- [Normal Spinner](#normalspinner)

#### Horizontal spinner

```xml

```

#### Vertical spinner

```xml

```

#### Normal spinner

```xml

```

## Setting spinner styles - style attributes

You can setup your spinner customized styles with following settings in layout attributes.

#### style

style attribute can setup your spinner style

#### app:itemLayout

passing your layout resourceId to setup your own itemLayout.

#### app:itemSelectedLayout

when the item selected it will be shown using `app:itemSelectedLayout`

#### app:nothingSelectedLayout

when nothing is selected, it will display this layout `app:nothingSelectedLayout` you could replace with your own placeholder here.

## Other Attributes

#### app:entries

setup your spinner entries.

#### app:prompt

setup your spinner prompt message.

#### app:spinnerMode

spinnerMode could be either `dropdown` or `dialog`.

#### title

setup title.

## Setup Spinner methods

#### spinner.setOnItemSelectedListener

```java
this.spinnerTest = (HorizontalSpinner) findViewById(R.id.spinner1);
spinnerTest.setOnItemSelectedListener((new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView> parentView, View selectedItemView, int position, long id) {
// your code here
Log.v("SpinnerTest1 position", String.valueOf(position));
Log.v("SpinnerTest1 id", String.valueOf(id));
}

@Override
public void onNothingSelected(AdapterView> parentView) {
// your code here
Log.v("SpinnerTest1", "nothing selected");
}
}));
```

#### spinner.clear();

clear entries in spinner.

##### spinner.add(String)

add a data in entry.

```java
spinnerTest.add("test data");
```

#### spinner.addAll(Collection)

add collection to entries

```java
ArrayList testData = new ArrayList();
testData.add("test 1");
testData.add("test 2");
testData.add("test 3");
testData.add("test 4");

spinnerTest.addAll(testData);
```

#### spinner.resetData(String datum)

reset data and set datum to `app:entries`.

#### spinner.resetData(Collection data)

reset data and set collection to `app:entries`.

#### spinner.setTitle(String title)

set title.

#### spinner.setPrompt(String prompt)

set spinner prompt.

#### spinner.setEnabled(boolean enabled)

set spinner enabled or not.

#### spinner.setSelection(int position)

set spinner selection position.

#### spinner.getSpinnerView()

get spinner in the view.

#### spinner.getTitleView()

get title in the view.

## License

MIT