Ik ben eigenlijk op zoek naar een UITextField toe te voegen aan een UITableViewCell op tableView: commitEditingStyle: forRowAtIndexPath :. Op insert, ik wil een UITextField toe te voegen over de bestaande cel.
Ik opstelling de textField met iets als dit:
-(void) setUpIndexField {
inputField = [[UITextField alloc] init];
inputField.textAlignment = UITextAlignmentCenter;
inputField.borderStyle = UITextBorderStyleRoundedRect;
inputField.keyboardType = UIKeyboardTypeNamePhonePad;
inputField.delegate = self;
}
Toen in commitEditingStyle, ik heb iets, zoals:
- (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.
}
Toen ik op de accessor Insert (+) klikt, wordt de textField inderdaad krijgen plofte op het scherm, maar niet in de buurt van de cel dat is erop te klikken. Het gaat uit naar een willekeurig deel van de UIView, niet de werkelijke cel voor de indexPath naar waar de + is geklikt.
Inzicht in waar ik mis ging en hoe ik kan het UITextField plaatsen op de cel waar de + is geklikt zou ideaal zijn.













