Xcode:NSMutableArray不能超过3个条目

时间:2016-09-03 10:01:07

标签: ios objective-c iphone uitableview nsmutablearray

我需要一些帮助来处理我的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个条目。)

谢谢!

0 个答案:

没有答案