项目作者: linbin91

项目描述 :
网络上的dropdownMenu,有单个的有联动的
高级语言: Java
项目地址: git://github.com/linbin91/DropdownMenu-master.git
创建时间: 2016-05-20T03:02:48Z
项目社区:https://github.com/linbin91/DropdownMenu-master

开源协议:

下载


DropdownMenu View

Build Status


基于 ListView 和 PopupWindow 实现的下拉菜单,可以方便的配置样式和填充数据。

(work in process: 本项目为学习使用,不保证使用稳定性,请慎重使用。)


screenshot

使用

Layout 代码:

  1. <com.twiceyuan.dropdownmenu.DropdownMenu
  2. android:id="@+id/dm_dropdown"
  3. android:layout_width="0dp"
  4. android:layout_height="40dp"
  5. android:layout_weight="1"
  6. dm:highlightColor="@color/colorPrimary"
  7. dm:iconColor="#777"
  8. dm:titleBgColor="#eee"
  9. dm:titleText="默认选项"
  10. dm:titleTextSize="14"></com.twiceyuan.dropdownmenu.DropdownMenu>

Java 代码:

  1. DropdownMenu menu = (DropdownMenu) findViewById(R.id.dm_dropdown);
  2. menu.setAdapter(new ArrayDropdownAdapter(this, R.layout.light_dropdown_item_1line, HEROES));
  3. menu.setOnItemClickListener(new OnDropdownItemClickListener() {
  4. @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
  5. Toast.makeText(getApplicationContext(), HEROES[position], Toast.LENGTH_SHORT).show();
  6. }
  7. });
  8. // 同时只允许一个 DropdownMenu 为打开状态
  9. MenuManager.group(menu, menu2);

依赖

  1. allprojects {
  2. repositories {
  3. maven { url "https://jitpack.io" }
  4. }
  5. }
  6. dependencies {
  7. compile 'com.github.twiceyuan:DropdownMenu:1.1.6'
  8. }

更新日志

update 1.1.6

优化下拉菜单标题的显示,在其长度过长时显示省略号。同时增加获得标题文本 TextView 的方法,方便使用时进一步微调

update 1.1.5

切换图标,调整细节

update 1.1.3

  1. 添加 library 中的源码
  2. 修复选择后获取不到 title 的问题

update 1.1.1

添加自定义下拉布局的支持,添加二级联动的例子

update 1.1.0

  1. 修改上下图标箭头为字体图标(仅有两个字符 1KB 左右的字体文件不会造成资源浪费)
  2. 上下箭头可以通过 iconColor 来设置颜色
  3. DropdownMenu 的 title 文字选中时(下拉菜单弹出)时的颜色可以通过 highlightColor 来配置
  4. 增加 sample 里 list adapter 设置单选的效果

update 1.0.4

解决在低版本上面点击事件不响应的问题。

update 1.0.3

  1. 添加手动弹出和关闭的方法
  2. 添加管理工具类来实现同时只允许一个窗口为弹出状态

update 1.0.2

  1. 选择其中一项后改变标题文字(需要适配器实现 DropdownAdapter 接口)
  2. 在 PopupWindow 打开时点击标题收起
  3. Java 中设置默认标题文字