Я в основном пытаюсь добавить UITextField в UITableViewCell при Tableview: commitEditingStyle: forRowAtIndexPath :. На вставке, я хочу, чтобы добавить UITextField поверх существующей ячейки.
Я настроить TextField с чем-то вроде этого:
-(void) setUpIndexField {
inputField = [[UITextField alloc] init];
inputField.textAlignment = UITextAlignmentCenter;
inputField.borderStyle = UITextBorderStyleRoundedRect;
inputField.keyboardType = UIKeyboardTypeNamePhonePad;
inputField.delegate = self;
}
Тогда в commitEditingStyle, у меня есть что-то такое, как:
- (void)tableView:(UITableView *)tv
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath *)indexPath
{
NSInteger row = [indexPath row];
if (editingStyle == UITableViewCellEditingStyleInsert) {
if (row == 0) {
UITableViewCell *cell = [tv cellForRowAtIndexPath:indexPath];
inputField.frame = [tv cellForRowAtIndexPath:indexPath].frame;
[cell.contentView addSubview:inputField];
[inputField becomeFirstResponder];
return;
}
// more code etc.
}
Когда я нажимаю на аксессору Insert (+), текстовое поле не действительно получить шлепнулся на экране, но не где рядом с клеткой, которая щелкая его. Она уходит в случайную часть UIView, а не фактической ячейки для indexPath при котором + была нажата.
Insight, где я пошел не так, и как я могу поместить UITextField на ячейку, где + щелкнули бы идеально.













