0

这是我目前的流程:

1) 点击添加按钮 2) 在我的模态视图控制器中填写 UITextFields 3) 点击保存按钮 4) 将数据添加到 UITableViewCell 5) 重复步骤 1 - 3 6) 将新数据添加到第二个单元格,但两者中的数据单元格来自新输入

如何使用相同的模态视图控制器添加新数据并将其保留在我以前的单元格中,甚至在我点击这些单元格时查看数据?

这是我进入模态视图控制器并向其添加数据的过程:

 -(IBAction)goToModalView:(id)sender
 {
    if (self.educationViewController == nil)
    {
        EducationViewController * temp = [[EducationViewController alloc] initWithNibName:@"EducationViewController" bundle:[NSBundle mainBundle]];
        self.educationViewController = temp;

        _dataArray = [[NSMutableArray alloc] init];
        [_dataArray addObject:temp];
    }
    else
    {
        [self addEducation:sender];
    } 

    [self presentViewController:self.educationViewController animated:YES completion:nil];
}

-(IBAction)addEducation:(id)sender
{
    [_myTableView beginUpdates];
    [_dataArray addObject:self.educationViewController.majorString];
    NSArray * paths = [NSArray arrayWithObject:[NSIndexPath indexPathForRow:[_dataArray count]-1 inSection:0]];
    [_myTableView insertRowsAtIndexPaths:paths withRowAnimation:UITableViewRowAnimationTop];
    [_myTableView endUpdates];
}

这是我在模态视图控制器中保存文本的位置:

 -(IBAction)saveData
 {
     if (_majorTextField.text == nil)
     {
        _majorString = @"";
     }
     else
     {
        _majorString = [[NSString alloc] initWithFormat:@"%@", _majorTextField.text];
        [_majorTextField setText:_majorString];
        NSUserDefaults * majorDefault = [NSUserDefaults standardUserDefaults];
        [majorDefault setObject:_majorString forKey:@"major"];
     }
     // Other text field code here

     [self dismissViewControllerAnimated:YES completion:nil];
 }

任何建议表示赞赏!非常感谢!

4

2 回答 2

0

我不明白 goToModalView() 为什么你做“[_dataArray addObject:temp];”。但是请保留它,在 addEducation() 中,您可以使用

[_myTableView reloadData];

阅读整个表格。

于 2012-11-30T03:45:01.730 回答
0

Instead of adding the data directly to the UITableView, I would add it to an NSMutableArray. I would then use that array as the datasource for the table, and after the save button is pressed, I would call

[_myTableView reloadData]; 
于 2012-11-30T03:38:26.670 回答