2010-10-16 38 views
0

。我在一個視圖控制器中有一些UIButtons,當它被觸摸時應該發出一個聲調,並在發佈時停止播放音調。這樣做是爲了使音調長度取決於按下按鈕的時間長短。使用iphone SDK 4.0的UIButton事件

當我打電話時[toneplay start]和TouchUpInside事件 時,我使用Touch down事件,因爲當我調用[toneplay stop]時。

我發現的一個問題是,如果觸摸按鈕後,我很快導航到另一個視圖控制器(例如通過標籤欄按鈕),TouchUpInside事件從不會觸發,因此音調從不停止播放,除非我導航回到屏幕,點擊相同的按鈕。

這樣做的正確方法是什麼?播放音調的實際方法在這裏並不重要,它更多的是我應該真正使用的UIButton事件來獲得上述功能。

感謝

回答

2

你也想喊得UIControlEventTouchUpOutside和UIControlEventTouchCancel。只要想到觸摸按鈕,然後將手指向外移動並使其升高即可。