commitEditingStyle: Temelde tableView üzerine bir UITableViewCell bir UITextField eklemek çalışıyorum forRowAtIndexPath :. ekin, ben mevcut hücrenin üzerinde bir UITextField eklemek istiyorum.
Ben kurulum Böyle bir şey textField:
-(void) setUpIndexField {
inputField = [[UITextField alloc] init];
inputField.textAlignment = UITextAlignmentCenter;
inputField.borderStyle = UITextBorderStyleRoundedRect;
inputField.keyboardType = UIKeyboardTypeNamePhonePad;
inputField.delegate = self;
}
Sonra commitEditingStyle içinde, ben bir şey gibi vardır:
- (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.
}
Ben takın erişimcisine (+) tıkladığınızda, textField gerçekten ekrana plopped, ancak bunu tıklanıyor hücrenin yakınındaki hiçbir yerde olsun demek. Bu UIView + tıklandığı de indexPath için değil, gerçek hücrenin rastgele parçası haline söner.
Nerede yanlış üzerine Insight ve nasıl + ideal olacaktır tıklanan hücrenin üzerine UITextField yerleştirebilirsiniz.













