2011-01-09 110 views
2

我有一個顯示照片的ScrollView。當觸摸屏幕時,會彈出一個UIToolBar,並帶有幾個UIBarButtonItem按鈕,如Previous,Next,Play ...如果用戶在5秒鐘內沒有做任何事情,工具欄會再次消失。在UIBarButtonItem中檢測觸摸或按下

這與Apple Photos應用程序非常相似。

一切都按照它應該的方式工作,但有一件事我正在努力:如果用戶按下按鈕,我無法觸及,也不能檢查按鈕的高亮顯示狀態。

因此,如果用戶將按鈕按下幾秒鐘,就會出現問題...程序會假設什麼都沒有發生,並在5秒鐘後移除工具欄。

該Photos應用程序沒有此問題。更好的是:當你按下Next或Previous按鈕或超過一秒鐘時,它已經執行了與UIBarButtonItem關聯的「action」!

總之,我想要做的其中之一: - 知道的UIBarButtonItem是否被按下 - 知道的UIBarButtonItem是否被高亮顯示 - 要不就是隻知道是否有任何新聞去任何地方上

+0

聽起來像你的IB連接沒有設置 – 2011-01-09 17:15:21

回答

2

您可以嘗試附加UIGestureRecognizer的自定義子類,該子類告訴您用戶何時與視圖交互到工具欄。

或者,你可以嘗試繼承UIToolbar並改變其-[touchesBegan:withEvent:]-[touchesEnded:withEvent:]方法告訴你的用戶開始/停止使用工具欄上的任何內容進行交互時。

後者可能更簡單。