これが私が現在持っているプロセスです:
1) [追加] ボタンをタップします 2) モーダル ビュー コントローラーで UITextFields に入力します 3) [保存] ボタンをタップします 4) データが UITableViewCell に追加されます 5) 手順 1 ~ 3 を繰り返します 6) 新しいデータが 2 番目のセルに追加されますが、両方のセルにデータが追加されますセルは新しい入力からのものです
同じモーダル ビュー コントローラーを使用して新しいデータを追加し、それを以前のセルに保持し、それらのセルをタップしたときにデータを表示するにはどうすればよいですか?
モーダルView Controllerにアクセスしてデータを追加するプロセスは次のとおりです。
-(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];
}
どんなアドバイスでも大歓迎です!どうもありがとう!