2013-04-14 28 views
2

在從UIButton中移除目標時存在一些問題。基本上我有一個日曆,並希望能夠移動一個代表在日曆中保存的事件的按鈕。我開始:UIButton不會移除UIControlEventtouchDragInside的目標

[self.chosenButton addTarget:self action:@selector(dragMoving:withEvent:) forControlEvents:UIControlEventTouchDragInside]; 

,然後移動完成後,我打電話

[self.chosenButton removeTarget:nil action:NULL forControlEvents:UIControlEventTouchDragInside]; 

之後,但是,我仍然可以移動的按鈕,即使周圍雖然它應該保持不動。在dragMoving:withEvent:函數中,我只根據觸點指定按鈕的座標並檢查其有效性(如果它在屏幕內等)

任何想法爲什麼是dragMoving:仍然調用WithEvent ?

感謝

回答

1

那是因爲你其實不刪除目標,請嘗試:

[self.chosenButton removeTarget:self action:@selector(dragMoving:withEvent:) forControlEvents:UIControlEventTouchDragInside]; 
+0

試過了,也不能工作。在這裏的帖子中,人們建議我現在嘗試的方式是正確的方式,即使在Apple文檔中也這樣說,但不幸的是不起作用 –

+0

即使這樣也行不通? [self.chosenButton removeTarget:nil action:NULL forControlEvents:UIControlEventAllEvents]; –

+0

試過這個,但沒有那個。 –