Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Assertion failure in -[UITableView _endCellAnimationsWithContext:]

Hopefully this will be a quick fix. I have been trying to figure out the error that i keep getting. The error is listed below and the appdelagate is below that.

Any help is appreciated.

Thanks

2012-04-12 21:11:52.669 Chanda[75100:f803] --- Assertion failure in -[UITableView _endCellAnimationsWithContext:], /SourceCache/UIKit_Sim/UIKit-1914.84/UITableView.m:1037 2012-04-12 21:11:52.671 Chanda[75100:f803] --- Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid update: invalid number of rows in section 0. The number of rows contained in an existing section after the update (2) must be equal to the number of rows contained in that section before the update (2), plus or minus the number of rows inserted or deleted from that section (1 inserted, 0 deleted) and plus or minus the number of rows moved into or out of that section (0 moved in, 0 moved out).'

#import "AppDelegate.h"  @implementation AppDelegate  @synthesize window = _window; @synthesize databaseName,databasePath;   - (BOOL)application: (UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions {     self.databaseName = @"Customers.db";      NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);     NSString *documentDir = [documentPaths objectAtIndex:0];     self.databasePath = [documentDir stringByAppendingPathComponent:self.databaseName];     [self createAndCheckDatabase];      return YES; }  - (void)createAndCheckDatabase {     BOOL success;      NSFileManager *fileManager = [NSFileManager defaultManager];     success = [fileManager fileExistsAtPath:databasePath];      if (success) return;       NSString *databasePathFromApp = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:self.databaseName];      [fileManager copyItemAtPath:databasePathFromApp toPath:databasePath error:nil]; }  @end 
like image 579
Scubadivingfool Avatar asked Apr 13 '12 03:04

Scubadivingfool


1 Answers

I don't see the reason for you to show us this part of code. Your error must be connected to this part in your code I assume

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;  - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 

Probably you are making a mistake in one of these data source methods. Currently it's impossible to say what exactly is wrong but I assume it could be something like: You are telling the table view in the numberOfRowsInSection you would like to have n rows reserved and setup and in the cellForRowAtIndexPath you then only handle n - 1 rows for example.

Sorry that this answer can't be as precise as it should be. If you show us your implementation of your data source it would be much easier to tell what's going on.

like image 118
pbx Avatar answered Sep 20 '22 13:09

pbx