我需要一些帮助来处理我的UITableView的内容。 我已经查看了包含我遇到的问题的每个问题,但没有一个问题给了我一个解决方案。
基本信息:
带有静态单元格的 UITableViewController (带有多个TextFields等)
一个静态单元格包含另一个 TableView ,它具有动态单元格(从 UITableViewController 处理)。
在动态TableView的末尾有一个按钮。该按钮使用textInput调用UIAlertController。 textInput被添加到一个数组中,该数组是动态tableView的dataSource。
对于前3个条目,一切正常,Tableview显示输入的文本。一旦我到达第4个条目(数组中的索引3),给我这个错误:*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayI objectAtIndex:]: index 3 beyond bounds [0 .. 2]'
代码在viewDidLoad上加载数组:
serialnumbers = [[NSMutableArray alloc] initWithCapacity:30];
serialnumbers = [NSKeyedUnarchiver unarchiveObjectWithData:[_artikelInfos valueForKey:@"checks"]];
UIAlertController的代码:
UIAlertAction *action = [UIAlertAction actionWithTitle:@"Save" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
NSString *serialnumber = [[firstAlert textFields] lastObject].text;
[serialnumbers addObject:serialnumber];
NSData *arrayData = [NSKeyedArchiver archivedDataWithRootObject:serialnumbers];
[_artikelInfos setValue:arrayData forKey:@"checks"];
[context save:nil];
[_dynamicTableView reloadData];
}];
A在另一个具有相同结构的TableView中已经有相同的问题,我只是将最大numberOfRows限制为3(这不是最佳解决方案,但tableView已连接到searchBar,因此无需显示更多加载视图时的3个条目。)
谢谢!