在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → NiceSpinner源码:一个适用于Android的漂亮下拉框

NiceSpinner源码:一个适用于Android的漂亮下拉框

一般编程问题

下载此实例

实例介绍

【实例简介】
Arcadefire:一个适用于Android的漂亮下拉框源码下载
NiceSpinner是默认Android下拉框的重新实现,具有漂亮的箭头动画和不同的内容显示方式。遵循Material Design指南,兼容Api 14及以上。
Nice Spinner
NiceSpinner是默认Android下拉框的重新实现,具有漂亮的箭头动画和不同的内容显示方式。它遵循Material Design指南,兼容Api 14及以上。
Usage
使用方法非常简单。将标签添加到XML布局中:
<org.angmarch.views.NiceSpinner
   android:id="@ id/nice_spinner"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_margin="16dp"/>
注意:将layout_width更改为至少与列表中最大项的宽度相同,以防止调整大小。
然后使用以下代码片段填充内容:
NiceSpinner niceSpinner = (NiceSpinner) findViewById(R.id.nice_spinner);
List<String> dataset = new LinkedList<>(Arrays.asList("One", "Two", "Three", "Four", "Five"));
niceSpinner.attachDataSource(dataset);
Listeners
要监听项目选择操作,只需使用以下代码片段:
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
您可以添加属性来自定义视图。可用属性:
名称 类型 信息
arrowTint 颜色 设置下拉箭头的颜色
hideArrow 布尔值 设置是否显示或隐藏下拉箭头
arrowDrawable 引用 设置下拉箭头的可绘制对象
textTint 颜色 设置文本颜色
dropDownListPaddingBottom 尺寸 设置下拉列表的底部填充
backgroundSelector 整数 设置下拉列表行的背景选择器
popupTextAlignment 枚举 设置默认弹出文本的水平对齐
entries 引用 从字符串数组设置数据源
How to include
使用gradle:编辑您的build.gradle:
allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}
dependencies {
    implementation 'com.github.arcadefire:nice-spinner:1.4.4'
}
或者将其声明到您的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>

【实例截图】


from clipboard

from clipboard

【核心代码】
文件清单
└── nice-spinner-1b9c68e7e500835947470bf0bf8bca76a186735f
    ├── app
    │   ├── build.gradle
    │   └── src
    │       └── main
    │           ├── AndroidManifest.xml
    │           ├── java
    │           │   └── org
    │           │       └── angmarc
    │           │           └── app
    │           │               └── MainActivity.java
    │           └── res
    │               ├── drawable
    │               │   └── background_selector.xml
    │               ├── drawable-v21
    │               │   └── background_selector.xml
    │               ├── layout
    │               │   └── activity_main.xml
    │               ├── mipmap-xhdpi
    │               │   ├── ic_launcher.png
    │               │   └── ic_launcher_round.png
    │               ├── mipmap-xxhdpi
    │               │   ├── ic_launcher.png
    │               │   └── ic_launcher_round.png
    │               ├── mipmap-xxxhdpi
    │               │   ├── ic_launcher.png
    │               │   └── ic_launcher_round.png
    │               └── values
    │                   ├── colors.xml
    │                   ├── strings.xml
    │                   └── styles.xml
    ├── build.gradle
    ├── gradle
    │   └── wrapper
    │       ├── gradle-wrapper.jar
    │       └── gradle-wrapper.properties
    ├── gradle.properties
    ├── gradlew
    ├── gradlew.bat
    ├── library
    │   ├── build.gradle
    │   └── src
    │       ├── androidTest
    │       │   └── java
    │       │       └── org
    │       │           └── angmarch
    │       │               └── views
    │       │                   └── NiceSpinnerTest.kt
    │       └── main
    │           ├── AndroidManifest.xml
    │           ├── java
    │           │   └── org
    │           │       └── angmarch
    │           │           └── views
    │           │               ├── NiceSpinnerAdapter.java
    │           │               ├── NiceSpinnerAdapterWrapper.java
    │           │               ├── NiceSpinnerBaseAdapter.java
    │           │               ├── NiceSpinner.java
    │           │               ├── OnSpinnerItemSelectedListener.java
    │           │               ├── PopUpTextAlignment.java
    │           │               ├── SimpleSpinnerTextFormatter.java
    │           │               └── SpinnerTextFormatter.java
    │           └── res
    │               ├── drawable
    │               │   ├── arrow.xml
    │               │   ├── selector.xml
    │               │   └── spinner_drawable.xml
    │               ├── drawable-hdpi
    │               │   └── ic_arrow_drop_down_black_24dp.png
    │               ├── drawable-mdpi
    │               │   └── ic_arrow_drop_down_black_24dp.png
    │               ├── drawable-nodpi
    │               │   └── drop_down_shadow.9.png
    │               ├── drawable-v21
    │               │   └── selector.xml
    │               ├── drawable-xhdpi
    │               │   └── ic_arrow_drop_down_black_24dp.png
    │               ├── drawable-xxhdpi
    │               │   └── ic_arrow_drop_down_black_24dp.png
    │               ├── drawable-xxxhdpi
    │               │   └── ic_arrow_drop_down_black_24dp.png
    │               ├── layout
    │               │   └── spinner_list_item.xml
    │               └── values
    │                   ├── attrs.xml
    │                   ├── colors.xml
    │                   └── dimens.xml
    ├── LICENSE
    ├── nice-spinner.gif
    ├── README.md
    └── settings.gradle

41 directories, 50 files

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警