2013-12-19 22 views
0

我在屏幕上有幾個設置面板和按鈕。當用戶在最近5秒內沒有點擊/按任何按鈕時,我需要隱藏它們。 我該怎麼做?我如何確定在某段時間內沒有采取任何行動?如何確定用戶在一段時間內沒有按任何按鈕

+1

你有什麼想法嗎?試過什麼? – Wain

+0

爲所有按鈕賦予一些標籤,併爲所有按鈕設置相同的操作,無論何時用戶單擊按鈕,操作將被觸發,將標籤存儲在數組中。5秒後,您可以檢入數組。 – Suryakant

+0

我需要知道,如果用戶沒有觸摸任何東西,甚至沒有點擊屏幕。 – Evgeniy

回答

1

如果你要隱藏你的按鈕的方法,讓我們將其命名爲hideButtons,可以延遲一段時間後進行選擇,以隱藏按鈕:

[self performSelector:@selector(hideButtons) withObject:nil afterDelay:5.0]; 

而在關聯到你的UIGestureRecognizer的方法,取消

[NSObject cancelPreviousPerformRequestsWithTarget:self]; 
//next line only if you want to restart counting no action performed for 5 sec. 
[self performSelector:@selector(hideButtons) withObject:nil afterDelay:5.0]; 
+0

我用這個,它的工作原理正確,我需要它。 謝謝! – Evgeniy

3

有可以遵循實現這個簡單的步驟 -

  • 顯示按鈕的
  • 啓動一個NSTimer
  • 如果按下任何按鈕,在按鈕的動作重啓視圖的NSTimer
  • 5秒後隱藏視圖並將其從超級視圖中刪除,然後使您的NSTimer失效。

祝你好運!

相關問題