2013-05-15 14 views
5

我試圖創建一個按鈕,當用戶的觸摸帶到按鈕的任何位置時(無論它們觸及內部,還是從外部拖動到按鈕內部),都會觸發一個動作。實質上,我需要創建一種方法來觸發每當手指在按鈕內時執行操作。iOS UIButton Touch Drag輸入不按預期工作?

「Touch drag enter」結合「touch down inside」聽起來像是做這項工作,但它看起來工作方式與我所需要的不同。

此外,我寧願如果它可以在故事板而不是硬代碼(如touchesBegan /移動),但如果沒有其他方式沒關係。

回答

0

在IB Touch Down中設置連接時應該是您要查找的內容。任何時候用戶的手指碰到按鈕,動作都會被調用。

+2

這並沒有解決OP在將按鈕帶入按鈕時觸發動作的需要。 –

3

要麼你將不得不將所有的事件一個接一個地綁定到你想從IB調用的按鈕上。

OR

你可以嘗試註冊按鈕UIControlEventAllTouchEvents您的代碼中。下面是可能會有所幫助的例子

[_btnRoundRect addTarget:self action:@selector(btnPressedAction) forControlEvents:UIControlEventAllTouchEvents]; 


- (void)btnPressedAction{ 
    NSLog(@"Bttn pressed"); 
} 
5

Touch drag enter只會被調用,當u開始控制內觸摸並拖動它的控制範圍之外,然後將其拖回控制裏面,不離開觸摸。所以你需要繼承你的按鈕並實現所需的功能。