2010-09-16 48 views
0

我的視圖控制器具有UITextField對象作爲子視圖。控制器被設置爲處理文本字段的UIControlEventTouchUpOutside事件的目標。 我想使用這個事件處理程序來解除鍵盤時,文本字段成爲第一響應者,但它似乎永遠不會被調用。像textFieldShouldReturn這樣的委託方法工作得很好。UITextField是否使用觸摸事件?

爲什麼文本字段對象不發送動作消息發送給目標?我嘗試過這種方案來處理所有觸摸事件,但沒有運氣。或者我必須以某種方式繼承UITextField才能捕獲此事件?

提前致謝!

回答

0

的UITextField肯定響應這些事件來處理光標定位等等。它可能不會將這些事件「轉發」給其父母。如果您需要截取的,你也可以繼承UITextEvent和自己趕上那些事件(當然不要忘記調用[超級blablabla]爲了保持標準的行爲。

0

也許它只是不響應UIControlEventTouchUpOutside事件。我相信它會響應UIControlEventValueChanged事件。我認爲你可以將一個透明的定製UIButtom作爲背景視圖,並且如果UIButtom中有任何touchInSideUp,你可以根據需要解散鍵盤。

-1

它響應同一事件的UIButton。看看IB。你也可以考慮使用UITextFieldDelegate方法

- (BOOL) textFieldShouldBeginEditing:(UITextField *)textField 
+0

並不UIControlEventTouchUpInside迴應 – meteors 2015-05-04 08:14:30