2011-01-09 62 views
0

我有一個UITableView內的UITextField。我給自己定的文本視圖的代表在我的UITableView的方法的cellForRowAtIndexPath如下UITableView內的UITextField

cell.textField.delegate = self; 

但是當我完成編輯後,按「完成」我沒有我的委託方法如下所示得到任何東西。可能是什麼原因?

-(void) textFieldDidEndEditing: (UITextField *) textField {  
NSLog(@"here"); 

}

回答

1

文本字段辭職第一響應狀態後,textFieldDidEndEditing:方法被調用。要讓文本字段恢復第一響應者狀態,請發送一條resignFirstResponder消息。在文本字段代表的textFieldShouldReturn:方法中,一個很好的做法是。這將是這個樣子:

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

當用戶點擊「完成」鍵,textFieldShouldReturn:方法被調用,導致文本字段辭職第一響應狀態,並textFieldDidEndEditing:被調用。