Giter VIP home page Giter VIP logo

nice-spinner's Introduction

Nice Spinner Android Arsenal

NiceSpinner is a re-implementation of the default Android's spinner, with a nice arrow animation and a different way to display its content.

It follows the material design guidelines, and it is compatible starting from Api 14.

alt tag

Usage

The usage is pretty straightforward. Add the tag into the XML layout:

 <org.angmarch.views.NiceSpinner
   android:id="@+id/nice_spinner"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_margin="16dp"/>
  • Note: change layout_width to at least the width of the largest item on the list to prevent resizing

Then use this snippet to populate it with contents:

 NiceSpinner niceSpinner = (NiceSpinner) findViewById(R.id.nice_spinner);
 List<String> dataset = new LinkedList<>(Arrays.asList("One", "Two", "Three", "Four", "Five"));
 niceSpinner.attachDataSource(dataset);

Listeners

For listening to the item selection actions, you can just use the following snippet:

spinner.setOnSpinnerItemSelectedListener(new OnSpinnerItemSelectedListener() {
    @Override
    public void onItemSelected(NiceSpinner parent, View view, int position, long id) {
        // This example uses String, but your type can be any
        String item = parent.getItemAtPosition(position);
        ...
    }
});

Attributes

You can add attributes to customize the view. Available attributes:

name type info
arrowTint color sets the color on the drop-down arrow
hideArrow boolean set whether show or hide the drop-down arrow
arrowDrawable reference set the drawable of the drop-down arrow
textTint color set the text color
dropDownListPaddingBottom dimension set the bottom padding of the drop-down list
backgroundSelector integer set the background selector for the drop-down list rows
popupTextAlignment enum set the horizontal alignment of the default popup text
entries reference set the data source from an array of strings

How to include

With gradle: edit your build.gradle:

allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}

dependencies {
    implementation 'com.github.arcadefire:nice-spinner:1.4.4'
}

Or declare it into your pom.xml:

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.github.arcadefire</groupId>
    <artifactId>nice-spinner</artifactId>
    <version>1.4.4</version>
</dependency>

License

Copyright (C) 2015 Angelo Marchesin.

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.

nice-spinner's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nice-spinner's Issues

Issue on Samsung On5 and On7 devices

got few crashes from these devices:

Caused by android.view.InflateException: Binary XML file line #16: Error inflating class org.angmarch.views.NiceSpinner at android.view.LayoutInflater.createView(LayoutInflater.java:640) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750) at android.view.LayoutInflater.rInflate(LayoutInflater.java:813) at android.view.LayoutInflater.rInflate(LayoutInflater.java:821) at android.view.LayoutInflater.parseInclude(LayoutInflater.java:902) at android.view.LayoutInflater.rInflate(LayoutInflater.java:809) at android.view.LayoutInflater.rInflate(LayoutInflater.java:821) at android.view.LayoutInflater.inflate(LayoutInflater.java:511) at android.view.LayoutInflater.inflate(LayoutInflater.java:415) at android.view.LayoutInflater.inflate(LayoutInflater.java:366) at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292) at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) at yeah.b.onCreate(PlayerBase.java:103) at yeah.VideoPlayerActivity.onCreate(VideoPlayerActivity.java:25) at android.app.Activity.performCreate(Activity.java:6575) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1134) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3121) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3278) at android.app.ActivityThread.access$1000(ActivityThread.java:211) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1705) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:6918) at java.lang.reflect.Method.invoke(Method.java) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)

setOnItemSelectedListener

mSpinner.setOnItemSelectedListener(new SimpleItemSelectedListener() {
@OverRide
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
playVideo();
}
});

Hello, i find a bug,this Listener,default 0 item was selected?? , but playVideo() not run.why?

ClassCastException with Appcompat module

Hi Angelo,

It seems that the spinner triggers an Exception if the project uses the Appcompat library (com.android.support:appcompat-v7:23.0.0)

java.lang.ClassCastException: android.support.v7.widget.AppCompatSpinner cannot be cast to org.angmarch.views.NiceSpinner

TintContextWrapper cannot be cast to Activity

in measureDisplayHeight method, Activity activity = (Activity)this.getContext(), this code is wrong ,as NiceSpinner extends AppCompatTextView,so context is wrapper by TintContextWrapper .

how to change the border and border color with NiceSpinner

I want to changge the NiceSpinner's border ,and i try to set the background with shape.xml ,but it didn't work!
<org.angmarch.views.NiceSpinner
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:spinnerMode="dialog"
android:id="@+id/nice_spinner"
android:layout_gravity="center"
android:background="@drawable/edittext_shape"
android:layout_marginRight="20dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="20dp"
/>

problem with nice spinner.

I am having an issue with nice spinner. The text displayed inside the spinner is getting deformed in terms of formatting once the spinner arrow is clicked more than once. Kindly tell a work around.

ListView onClick listener not called

Hello,

I noticed the ListView onClick listener is not working on pre-Lollipop devices.

Checked on Internet, found this : http://stackoverflow.com/a/11244139/2743222

I replaced PopupWindow construction by this :

mPopup = new PopupWindow(mListView,
                ViewGroup.LayoutParams.WRAP_CONTENT,
                ViewGroup.LayoutParams.WRAP_CONTENT, true);

Works like a charm 👍

Anthony.

Error when Build

java.lang.NullPointerException: Attempt to invoke virtual method 'void org.angmarch.views.NiceSpinner.attachDataSource(java.util.List)' on a null object reference

Value Text DataSource

Hi,
It's possible to set a custom class as datasource ? I want to use value text to bind. Query use value, Display use text. Thanks.

Spinner doesn't expand upwards.

I have a basic view, where the spinner is inside the relative layout and is at the bottom of the screen but the spinner doesn't expand upwards. I placed the nice-spinner and the default android spinner side by side in the same layout for comparison. The default spinner expands upwards but the nice-spinner doesn't. Please help.

Here is my layout -

     <?xml version="1.0" encoding="utf-8"?>
     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:tools="http://schemas.android.com/tools"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      tools:context="com.example.royab.myapplication.MainActivity">


<org.angmarch.views.NiceSpinner
    android:id="@+id/bitmap_selection_spinner"
    android:layout_width="150dp"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true" />

<Spinner
    android:id="@+id/spinner2"
    android:layout_width="150dp"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"></Spinner>

 </RelativeLayout>

And here is the acitivity

 ```

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    NiceSpinner niceSpinner = (NiceSpinner) findViewById(R.id.bitmap_selection_spinner);
    List<String> dataset = new LinkedList<>(Arrays.asList("One", "Two", "Three", "Four", "Five"));
    niceSpinner.attachDataSource(dataset);


    Spinner spinner2 = (Spinner) findViewById(R.id.spinner2);
    List<String> list = new ArrayList<String>();
    list.add("list 1");
    list.add("list 2");
    list.add("list 3");
    ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item, list);
    dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(dataAdapter);
}

}

Here's what it looks like - https://imgur.com/VB2VUuZ

Please help.

Dropdown open style paddings are lost

For whatever the reason, when I open and close the dropdown list then the opened style paddings are lost.

I couldn't find the reason so I changed the viewholder to store the initial paddings as a temporarily solutions.

protected static class ViewHolder {
    private int paddingLeft;
    private int paddingRight;
    private int paddingTop;
    private int paddingBottom;

    public TextView textView;

    public ViewHolder(TextView textView) {
        this.paddingLeft = textView.getPaddingLeft();
        this.paddingRight = textView.getPaddingRight();
        this.paddingTop = textView.getPaddingTop();
        this.paddingBottom = textView.getPaddingBottom();
        this.textView = textView;
    }
    public TextView getTextView(){
        textView.setPadding(paddingLeft,paddingTop,paddingRight,paddingBottom);
        return textView;
    }
}

in getView method

 textView = ((ViewHolder) convertView.getTag()).getTextView();

Array index out of bound exception when using in recyclerview

Here is the logcat:

FATAL EXCEPTION: main
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime: Process: com.dp.needdepartmentalstore1, PID: 24823
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime: java.lang.IndexOutOfBoundsException: Invalid index 1, size is 1
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at java.util.Arrays$ArrayList.get(Arrays.java:66)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at org.angmarch.views.NiceSpinnerAdapter.getItemInDataset(NiceSpinnerAdapter.java:36)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at org.angmarch.views.NiceSpinner.setAdapterInternal(NiceSpinner.java:232)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at org.angmarch.views.NiceSpinner.attachDataSource(NiceSpinner.java:222)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at com.dp.needdepartmentalstore.ProductsAdapter.onBindViewHolder(ProductsAdapter.java:89)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at com.dp.needdepartmentalstore.ProductsAdapter.onBindViewHolder(ProductsAdapter.java:25)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:5212)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:5245)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4483)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4359)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:1961)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1370)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1333)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager.scrollBy(LinearLayoutManager.java:1161)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager.scrollVerticallyBy(LinearLayoutManager.java:1018)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$ViewFlinger.run(RecyclerView.java:3807)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.view.Choreographer.doCallbacks(Choreographer.java:580)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.view.Choreographer.doFrame(Choreographer.java:549)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.os.Handler.handleCallback(Handler.java:739)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:95)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5254)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
11-14 17:29:11.667 24823-24823/com.dp.needdepartmentalstore1 E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

This occurs when we select different spinner value of particular cell and then scroll the recyclerview. Basically the mSelectedIndex of nicespinner.java doesn't get updated and holds the previous selected item index of different cell which generate out of bound exception.

救助

compile 'com.github.arcadefire:nice-spinner:1.2'无法成功添加到项目

error occurred nullpointerexception if less down 24sdk

java.lang.NullPointerException
at android.animation.PropertyValuesHolder.setupSetterAndGetter(PropertyValuesHolder.java:505)
at android.animation.ObjectAnimator.initAnimation(ObjectAnimator.java:487)
at android.animation.ValueAnimator.setCurrentPlayTime(ValueAnimator.java:517)
at android.animation.ValueAnimator.start(ValueAnimator.java:936)
at android.animation.ValueAnimator.start(ValueAnimator.java:946)
at android.animation.ObjectAnimator.start(ObjectAnimator.java:465)
at org.angmarch.views.NiceSpinner.animateArrow(Unknown Source)
at org.angmarch.views.NiceSpinner.showDropDown(Unknown Source)
at org.angmarch.views.NiceSpinner.onTouchEvent(Unknown Source)
at android.view.View.dispatchTouchEvent(View.java:7706)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2068)
at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1515)
at android.app.Activity.dispatchTouchEvent(Activity.java:2458)
at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2016)
at android.view.View.dispatchPointerEvent(View.java:7886)

Select One

The library is very nice.How can i add select one on this adapter.

Crashed when I set hideArrow="true" in the xml file.

Hi,

Great project just like your name :). Sorry to trouble you for a moment. I met a problem when I set hideArrow="true" in my xml files as the following seen:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <org.angmarch.views.NiceSpinner
        android:id="@+id/test_nice_spinner"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        app:hideArrow="true" />

</LinearLayout>

When I clicked on this text view, my app crashed, see the following:

08-28 16:52:19.229  24907-24907/com.amap.mock E/MessageQueue-JNI﹕ java.lang.NullPointerException
            at android.animation.PropertyValuesHolder.setupSetterAndGetter(PropertyValuesHolder.java:505)
            at android.animation.ObjectAnimator.initAnimation(ObjectAnimator.java:487)
            at android.animation.ValueAnimator.setCurrentPlayTime(ValueAnimator.java:517)
            at android.animation.ValueAnimator.start(ValueAnimator.java:936)
            at android.animation.ValueAnimator.start(ValueAnimator.java:946)
            at android.animation.ObjectAnimator.start(ObjectAnimator.java:465)
            at org.angmarch.views.NiceSpinner.animateArrow(NiceSpinner.java:256)
            at org.angmarch.views.NiceSpinner.showDropDown(NiceSpinner.java:265)
            at org.angmarch.views.NiceSpinner.onTouchEvent(NiceSpinner.java:242)
            at android.view.View.dispatchTouchEvent(View.java:7714)
            at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
            at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
            at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
            at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
            at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
            at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
            at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
            at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
            at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
            at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
            at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2216)
            at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
            at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2068)
            at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1515)
            at android.app.Activity.dispatchTouchEvent(Activity.java:2478)
            at android.support.v7.internal.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:60)
            at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2016)
            at android.view.View.dispatchPointerEvent(View.java:7894)
            at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4034)
            at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3913)
            at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3474)
            at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3524)
            at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3493)
            at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3600)
            at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3501)
            at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3657)
            at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3474)
            at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3524)
            at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3493)
            at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3501)
            at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3474)
            at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5619)
            at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5599)
            at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5570)
            at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5699)
            at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
            at android.os.MessageQueue.nativePollOnce(Native Method)
            at android.os.MessageQueue.next(MessageQueue.java:138)
            at android.os.Looper.loop(Looper.java:123)
            at android.app.ActivityThread.main(ActivityThread.java:5014)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:806)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
            at dalvik.system.NativeS

*It seems that you haven't initialised mDrawable when hideArrow is set to true. *

Suggestion: Make the API similar to android.widget.Spinner

This is a great widget. I've noticed that the default Spinner that comes with the design library is a bit confusing for users.

I have a suggestion: make the API of NiceSpinner compatible with android.widget.Spinner so that it acts as a so-called "drop-in replacement". This includes stuff like using setAdapter instead of attachDataSource and using setOnItemSelectedListener instead of setOnItemClickListener (the latter is not supported by Spinner). This will make it much easier for devs to use NiceSpinner (basically a search and replace will do).

Avoid Repeatation of background in adapter

I am trying to use android:background="@drawable/box_edittext2" but it did not work and If I try to to put this in JAVA it repeat the background for each row ... is it possible to put adapter's row background different and NiceSpinner Background differnet

The problem with the arrow

I used nice-spinner in a project ,the arrow is normal;however,when i used it in another project,the direction of the arrow is to left,and the drawable of the arrow changed?please help me out,thanks!
aaaaaaa

Android Compatibility

Hi there,

While testing your project I found two bugs happening with Sony ST2i running Android 4.0.4 (15). The fist seems easy to solve it's a matter of color, the color of the selected spinner is not set gradually: you directly something grey like this:

issue1

The second issue is more critical, you cannot select a displayed value on this phone, the click do not respond...
Step to reproduce:

  • Click on the spinner
  • Click on proposed values
    Expected behaviour:
  • Value is selected and replaces the old-selected value.
    Current behaviour:
  • Nothing happens

BTW: I created a project with a sample which compiles directly when you put it in Android Studio (I fixed some bugs of yours). If someone is interested: https://github.com/lolobosse/nice_spinner_demo

Give advice

1.cannot setBackgroundColor.
2.No self-adaptive

Cardview not showing

Cardview became invisible in layout preview android studio. When i remove your library it works again.
Thanks in advance

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.