https://github.com/zhengwenming/WMDragView
拖嗎?拖!拖就用WMDragView吧。WMDragView致力于讓任意View都可以自由拖動。可拖動的view網上代碼很多,但是都沒高度封裝,基本上都是用touch事件寫的,我剛開始也是用touch事件封裝的,但是使用到實際項目中有bug,因為你的拖動view中的view可能也是有touch事件的,所以會有點bug。后來用pan手勢從新封裝了一下,并提供了豐富的API。請大家放心食用,純手工打造,五毒無污染。
豐富的API如下:
- 把需要拖曳view的父類從原本繼承UIView,改成繼承WMDragView就OK了。
- dragEnable=YES,可拖曳
dragEnable=NO,不可拖曳 - freeRect可以任意設置活動范圍,默認為活動范圍為父視圖大小frame,
- 回調block 點擊的回調 ClickDragViewBlock 開始拖動的回調 BeginDragBlock 拖動中回調 DuringDragBlock 結束拖動的回調 EndDragBlock
- isKeepBounds是不是又自動黏貼邊界效果
isKeepBounds = YES,自動黏貼邊界,而且是最近的邊界 isKeepBounds = NO, 不會黏貼在邊界,它是free(自由)狀態,跟隨手指到任意位置,但是也不可以拖出規定的范圍 - 可以設置網絡圖片
- 可以自定義view加到dragView中,比如一個視頻,一個自定義按鈕等等。

image

image