假設的UITextField加入到的UITableViewCell像下面
UITableViewCell *cell;
UITextField *textField;
...
textField.tag = kTAG_TEXTFIELD;
[cell.contentView addSubview:textField];
...
您可以通過
-(BOOL)textFieldShouldReturn:(UITextField *)textField {
if([textField.superView.superView isKindOfClass:[UITableViewCell class]]) {
UITableViewCell *cell = (UITableViewCell *)textField.superView.superView;
NSIndexPath *indexPath = [self.myTableView indexPathForCell:cell];
}
...
獲取當前索引路徑然後下一行的的UITextField將
NSIndexPath *indexPathNextRow = [NSIndexPath indexPathForRow:(indexPath.row+1) inSection:indexPath.section];
UITableViewCell *cellNextRow = (UITableViewCell *)[self.myTableView cellForRowAtIndexPath:indexPathNextRow];
UITextField *textFieldNextRow = (UITextField *)[cellNextRow.contentView viewWithTag:kTAG_TEXTFIELD];
希望它能幫助!
謝謝!但我只是跟蹤當前的文本框,因爲有很多文本框。我能以某種方式獲得下一個文本字段而不使用標籤嗎? – Mrbiggerm 2010-05-13 09:14:18
當然,只要保留對它們的引用,「UITextField * firstTextField」或使用數組等等。但標記可能是識別委託文本字段的最快方法。 – 2010-05-13 09:19:13
但是,如果我不想跟蹤所有文本框或標籤?我能否以某種方式獲取當前正在編輯的文本字段所在的當前單元格,然後獲取indexpath? – Mrbiggerm 2010-05-13 10:13:15