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

image

image
