2011-06-12 43 views

回答

8

採用UITextFieldDelegate方法並將自己設置爲委託。實現textFieldShouldReturn:方法就是這樣,

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    [textField resignFirstResponder]; 
    [textField setHidden:YES]; 

    return YES; 
} 

如果您想在用戶完成輸入文本做到這一點,做在textFieldDidEndEditing:方法。

+0

如果我使用了textFieldDidEndEditing:方法,它將如何識別用戶完成輸入文本? – Matoe 2011-06-12 22:50:12

+0

'textField'應該調用'textFieldDidEndEditing:''resignFirstResponder'。通常在'textFieldShouldReturn:'方法中做到這一點。但是,如果可以通過其他方法從文本字段的「resignFirstResponder」中調用,那麼如果您在'textFieldShouldReturn:'中調用'setHidden:'方法,則不會知道該方法。 – 2011-06-12 22:54:17

+0

順便說一下如何採用UITextFieldDelegate方法?在這裏有一些麻煩......( – Matoe 2011-06-12 23:03:31

4

在您的.h文件中:

-(IBAction)returnKeyWasHit:(id)sender; 

在您.m文件:

-(IBAction)returnKeyWasHit:(id)sender { 
    [textField resignFirstResponder]; 
    //Other stuff you want to do 
} 

然後就這個動作連接到在界面生成器的文本字段的「真的結束在退出」事件。