2009-11-11 75 views
1

我是UIButton的子類並檢測手指移動,如果用戶以某種方式滑動他的手指,我將彈出一個UIAlerView。UIButton子類在彈出後不斷突出顯示UIAlertView

除了在解除UIAlertView ...之後,當用戶下一次觸摸UIButton時,按鈕會轉到高亮顯示的狀態並卡在那裏,即使在沒有手指觸摸的情況下也會持續高亮顯示。

再次按下按鈕,UIButton開始正常運行(只在觸摸時突出顯示)。

所以我只能假設在刷卡過程中發出警報,搞砸了事件的過程,touchesEnded從不發射也許?

如果任何人有任何想法如何重新設置按鈕後刷按鈕,以便它的行爲應該,我將不勝感激。

回答

1

您是否將您的狀態重置爲touchesCancelled?

+0

我沒有實施touchesCancelled。這可能是問題,我現在檢查... 我試圖重置touchesMoved狀態。 – user139816 2009-11-11 18:47:23

+0

OK,所以在執行touchesCancelled時,我應該如何「重置狀態」?目前我正在嘗試 self.selected = NO; 和 [self sendActionsForControlEvents:UIControlEventTouchCancel]; 但我仍然沒有太多運氣。 – user139816 2009-11-11 19:36:19