2016-06-16 110 views
1

當用戶點擊導航控制器導航欄中的後退按鈕時,我需要在文本字段中輸入resignFirstResponder(),否則會出現一些錯誤。後退按鈕就像它應該的那樣工作(先前的視圖被顯示),但我不知道在哪裏做第一響應者。如果我在viewWillDisappear()(我試過),prepareForSegue()沒有被調用,那麼爲時已晚,所以我需要在按下後退按鈕或至少在viewWillDisappear()之前立即執行此操作。我如何檢測該事件?檢測在導航欄中點擊後退按鈕

+1

它的問題是在stackoverflow - [答案](http://stackoverflow.com/questions/8228411/detecting-when-the-back-button-is-pressed-on-a-navbar) 回答 –

回答

2

注:參見問題的第一個評論的答案更簡單

您可以結合NotificationCenter和這個職位:Execute action when back bar button of UINavigationController is pressed,以使自定義後退按鈕(看起來相同)。只需在後退按鈕的操作中發佈Notification,然後在textfieldNotification上添加一個觀察者,其行爲將調用resignFirstResponder。您還需要在CoreGraphics中爲箭頭製作圖像或繪製圖像。