我在应用商店中有一个 iPhone 应用,它在设置菜单中有一个包含 4 个单元格(分组静态单元格)的部分。
我现在在本节中添加了一个新单元格。当我使用 Xcode 从 App Store 更新版本时,当我想打开设置菜单时,我的应用程序崩溃了。
该应用程序的新单元格有问题,因为当我想进入设置菜单时出现此异常:由于未捕获的异常而终止应用程序'NSRangeException', reason: '*** -[__NSArrayI objectAtIndex:]: index 4 beyond bounds [0 .. 3]'
当我将方法中的返回值设置"numberOfRowsInSection"
回 4 时,我可以毫无问题地启动应用程序,但肯定没有新行。
现在发生了令人难以置信的事件:当我从我的 iPhone 中删除应用程序并在我的 iPhone 上使用 Xcode 全新加载它时,一切都很好,应用程序加载新行没有任何复杂性。貌似更新过程有问题。。。
有人有想法吗?我不想提交新版本,更新应用程序时每个人都会崩溃:(
先感谢您。
编辑:这是堆栈跟踪 http://www.nucro.de/stacktrace.tiff
EDIT2:这里是初始化设置的代码(NSUserDefaults)
- (void)initializeData {
if (self.dataInitialized == 1) {
return;
}
self.pillMode = 0;
self.pillReminder = @"alle 30 min.";
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit fromDate:[NSDate date]];
[components setHour:20];
[components setMinute:0];
self.activeSwitch = YES;
self.fadeInEffectEnabled = YES;
self.timeReminder = [calendar dateFromComponents:components];
self.messageReminder = NSLocalizedString(@"MainViewController_defaultnotif_message", @"");
self.soundReminder = @"cartoonconga";//@"Standardton";
self.cycleDay = 1;
self.blister = 1;
self.totalDayAmount = 1;
self.protocol = [NSMutableArray new];
[self.protocol addObject:[self newCycleObject]];
self.firstUse = YES;
}