歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Andriod 實現可拖動列表

在做一個Android應用時,有一個需求,需要實現像iphone天氣的城市列表界面的可拖動功能。其實android已經實現了這個控件。但是這個控件不是公共控件,而是自帶音樂播放器下的一個自定義控件。具體目錄在:packages/apps/Music/src/com/android/music/TouchInterceptor.java。

使用發方法很簡單,因為TouchInterceptor.java是繼承ListView,與Listview不同之處在於,需要注冊對該Listview的監聽

代碼如下:

  1. public void setTrashcan(Drawable trash) {  
  2.     mTrashcan = trash;  
  3.     mRemoveMode = TRASH;  
  4. }  
  5.   
  6. public void setDragListener(DragListener l) {  
  7.     mDragListener = l;  
  8. }  
  9.   
  10. public void setDropListener(DropListener l) {  
  11.     mDropListener = l;  
  12. }  
  13.   
  14. public void setRemoveListener(RemoveListener l) {  
  15.     mRemoveListener = l;  
  16. }  
  17.   
  18. public interface DragListener {  
  19.     void drag(int from, int to);  
  20. }  
  21. public interface DropListener {//  拖動listview的item,如將position=1的拖動到position=5,在這裡做必要數據更新   
  22.     void drop(int from, int to);  
  23. }  
  24. public interface RemoveListener {  
  25.     void remove(int which);  
  26. }  
Copyright © Linux教程網 All Rights Reserved