在做一个应用时,有一个需求,需要实现像iphone天气的城市列表界面的可拖动功能。其实android已经实现了这个控件。但是这个控件不是公共控件,而是自带音乐播放器下的一个自定义控件。具体目录在:packages/apps/Music/src/com/android/music/TouchInterceptor.java。

使用发方法很简单,因为TouchInterceptor.java是继承ListView,与Listview不同之处在于,需要注册对该Listview的监听

代码如下:

    public void setTrashcan(Drawable trash) {mTrashcan = trash;mRemoveMode = TRASH;}public void setDragListener(DragListener l) {mDragListener = l;}public void setDropListener(DropListener l) {mDropListener = l;}public void setRemoveListener(RemoveListener l) {mRemoveListener = l;}public interface DragListener {void drag(int from, int to);}public interface DropListener {//  拖动listview的item,如将position=1的拖动到position=5,在这里做必要数据更新void drop(int from, int to);}public interface RemoveListener {void remove(int which);}

Andriod 实现可拖动列表相关推荐

  1. 原生JS案例(面向对象)——按住鼠标实现左右拖动列表

    按住鼠标实现左右拖动列表 需求 基本结构效果图 HTML页面 CSS样式 实现思路 原生JS 最终效果 实际应用 需求 鼠标在有色部分按下后, 可以对有颜色的部分进行左右拖拽 基本结构效果图 HTML ...

  2. 红橙Darren视频笔记 仿汽车之家 可拖动列表

    最终效果演示 1.ViewDragHelper简介 1.1ViewDragHelper可以做什么基本效果 1.2实现code public class DragView extends FrameLa ...

  3. 【凯子哥带你学Android】Andriod性能优化之列表卡顿——以“简书”APP为例

    这几天闲得无聊,就打开手机上的开发者模式里面的"GPU过度绘制"功能,看看别家的App做的咋样,然后很偶然的打开了"简书",然后就被它的过度绘制惊呆了,于是写了 ...

  4. html列表拖拽排序插件,可对列表自由拖拽排序的jQuery插件

    dragslot.js是一款可以对列表自由拖拽排序的jQuery插件.该插件主要的功能是实现了列表项可以在各个列表中相互拖拽. 对于像todo list, 分配任务列表都可以应用这个效果. 使用方法 ...

  5. acrobat 下拉列表 逻辑_记一次 无限列表 滚动优化

    背景 长列表优化, 是页面性能优化中的一个比较常见的问题,也是面试中的常客. 刚好最近在的项目中, 遇到了一个长列表的性能问题,试过多种方案, 最后得以解决. 今天就给大家分享一下. 正文 场景描述 ...

  6. html列表拖拽排序插件,JS拖拽排序插件Sortable.js用法实例分析

    本文实例讲述了JS拖拽排序插件Sortable.js用法.分享给大家供大家参考,具体如下: 最近由于项目功能设计的原因,需要对table中的行实现拖拽排序功能,找来找去发现Sortable.js能很好 ...

  7. jq 下拉加载每次只执行一次_记一次 无限列表 滚动优化

    背景 长列表优化, 是页面性能优化中的一个比较常见的问题,也是面试中的常客. 刚好最近在的项目中, 遇到了一个长列表的性能问题,试过多种方案, 最后得以解决. 今天就给大家分享一下. 正文 场景描述 ...

  8. 实现移动端touch事件的横向滑动列表效果

    要实现手机端横向滑动效果并不难,了解实现的原理及业务逻辑就很容易实现.原理:touchstart(手指按下瞬间获取相对于页面的位置)-->touchmove(手指移动多少,元素相应移动多少). ...

  9. .Net强大的列表控件XPTable【进阶版】

    旧版本 2012年分享过XPTable的一个版本源码,其中包含了我对其若干bug的修正.链接在此:.Net强大的列表控件XPTable Github上别人的更新 Github最新源码地址:https: ...

  10. FullCalendar 日历插件排班表排课表保姆级详解(可拖动排班排课)

    (基于vue)实现效果 文章目录 前言 一.FullCalendar是什么? 二.使用步骤 1.引入库 2.html部分代码 3.css样式代码(样式我单独写个scss文件引入的) 4.逻辑代码部分 ...

最新文章

  1. 十年之后,CV经典教材《计算机视觉:算法与应用》迎来第二版,初稿开放下载...
  2. 怎么把video文件改成mp4_如何把视频转换成mp4格式?
  3. 学python比较好的书-学习Python编程的最好的几本书
  4. docker mysql编辑器_docker官方mysql镜像自定义配置详解
  5. C语言写个贪吃蛇游戏
  6. php弹幕技术轮询,PHP实现长轮询消息实时推送功能代码
  7. delphi实现FTP上传与下载
  8. c语言指针重合,时钟指针重合问题的公式
  9. Mysql 错误1366, Incorrect string value: '\\xE6\\xB7\\xB1\\xE5\\x85\\xA5...' for column '
  10. Tegra TX1 build tensorflow r1.1
  11. 【技能树共建】Python 列表推导式
  12. ios APP 制作流程
  13. Sql server中 如何用sql语句创建视图 及 视图的作用
  14. CISP-PTE、CISP、CISSP之间的区别
  15. 接口测试有那些工具,他们的优劣势?
  16. aws cli 上传文件到s3命令_使用 AWS CLI 分段上传到 Amazon S3
  17. 博图无法链接plc下载程序 设置选择网卡
  18. r语言electricity数据集_怎么学习用 R 语言进行数据挖掘?
  19. ASEMI整流桥MB10M参数,MB10M大小,MB10M特性
  20. 2010 01 13 开博

热门文章

  1. 8psk信号的载波调制 matlab,EDGE系统中GMSK和8psk调制的应用原理
  2. vrep中接近开关与激光雷达
  3. python做数字识别_用python实现手写数字识别
  4. 火狐FireFox看视频不能全屏显示的问题
  5. 常用编程语言介绍及各语言特点
  6. 报表控件Stimulsoft Report在招投标系统中的应用
  7. QAbstractItemModel+qtreeview
  8. R语言数据分析案例合集
  9. vue——菜鸟教程学习
  10. 通达信经典指标组合图文详解