“Attempt to insert row 0 into section 0, but there are only 0 rows in section 0 after the update” Error

前端 未结 7 1881
無奈伤痛
無奈伤痛 2021-02-13 16:24

I have an app that is selecting a person from their contacts list and takes their First name, last name and email. It then saves the first name to a nsmutablearray and puts it i

7条回答
  •  执念已碎
    2021-02-13 16:56

    I have encountered same problem as this. All you have to do is change

    [self.myTableView insertRowsAtIndexPaths:@[indexPath]withRowAnimation:UITableViewRowAnimationAutomatic];`
    

    to

     [self.myTableView beginUpdates];
    
     [self.myTableView insertRowsAtIndexPaths:@[indexPath]withRowAnimation:UITableViewRowAnimationAutomatic];
    
     [self.myTableView endUpdates];
    

    From UITableView Documentation

    beginUpdates

    Begin a series of method calls that insert, delete, or select rows and sections of the receiver.

    when you use beginUpdates, you must call endUpdates and not reloadData.

    You can check https://developer.apple.com/library/ios/documentation/uikit/reference/UITableView_Class/Reference/Reference.html for more UITableView information.

    Hope this helps!

提交回复
热议问题