背景:在使用UITableView加載數(shù)據(jù)列表霎箍,排列方式是一行多列(懶得改成UICollectionView),每個(gè)產(chǎn)品的TouchEvent事件都是UIControlEventTouchDown凯肋,導(dǎo)致了在做下拉滾動(dòng)的動(dòng)作的時(shí)候,總會(huì)進(jìn)入產(chǎn)品詳情秕重。經(jīng)過(guò)一番的對(duì)比之后(做得有點(diǎn)混亂策治,UITableView的item的TouchEvent事件是用UIControlEventTouchUpInside),才開(kāi)始仔細(xì)看了一下UIControl的幾個(gè)TouchEvent创夜,順便記一下杭跪。
? ? ? 在使用[UIControl addTarget: action: forControlEvents:UIControlEventTouchDown]和[UIControl addTarget: action: forControlEvents:UIControlEventTouchUpInside] 中,UIControlEventTouchDown和UIControlEventTouchUpInside都是Touch事件驰吓,實(shí)現(xiàn)點(diǎn)擊觸發(fā)事件的功能涧尿。UIControlEventTouchDown不同的是按下后就觸發(fā),不受到后續(xù)Touch動(dòng)作的影響檬贰,例如按下滑動(dòng)姑廉,同樣會(huì)觸發(fā)事件;而UIControlEventTouchUpInside是控件接收到按下后就抬起的動(dòng)作而觸發(fā)事件翁涤;建議在滾動(dòng)列表的每個(gè)item的點(diǎn)擊事件用UIControlEventTouchUpInside庄蹋。
? ? ? 更多的可了解一下UIControl的TouchEvent
以下是轉(zhuǎn)載注明:http://blog.csdn.net/g5dsk/article/details/6613943