Есть похожие вопросы, которые уже задавались много раз, и они ссылались на многие решения, но ни одно из них не помогло мне, поскольку они обращались к фиксированному количеству ячеек, а у меня динамическое число ячеек.Вот проблема:
Это в Objective-C .У меня есть табличное представление, которое имеет динамическое количество строк (пользователь может добавить больше ячеек или удалить ячейки согласно требованию) и каждая строка содержит 3 текстовых поля , и в конце я хочу получить данныеиз этого текстового поля и сохраните их.Получение данных из всех текстовых полей работает отлично, но здесь возникает основная проблема, когда я добавляю данные в любую строку (3 текстовых поля), при повторной прокрутке они повторяются.
Вот код:
-(void)textFieldDidEndEditing:(UITextField *)textField{
if ([_txtNumbers resignFirstResponder]) {
totalIndex = [_txtNumbers.text integerValue];
[_tblContacts reloadData];
}
}
- (IBAction)onAddCellClicked:(id)sender {
totalIndex = [_txtNumbers.text integerValue];
totalIndex = totalIndex + 1;
_txtNumbers.text = [NSString stringWithFormat:@"%ld",(long)totalIndex];
[_tblContacts reloadData];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return totalIndex;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"InviteEmailTableViewCell";
InviteEmailTableViewCell *cell = [self.tblContacts dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
cell.txtName.delegate = self;
cell.txtTell.delegate = self;
cell.txtEmail.delegate = self;
UIToolbar *numberToolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 50)];
[numberToolbar setTintColor:kShadowColor1];
[numberToolbar setBarTintColor:[UIColor blackColor]];
numberToolbar.items = [NSArray arrayWithObjects:
[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:@selector(cancelNumberPad:)],
[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil],
[[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(doneWithNumberPad:)],
nil];
cell.txtTell.inputAccessoryView = numberToolbar;
[cell.txtName setTag:indexPath.row];
[cell.txtTell setTag:indexPath.row];
[cell.txtEmail setTag:indexPath.row];
return cell;
}
что делать дальше здесь?