2016-07-10 9 views
0

テーブルビューから行を削除するための私のアニメーションは、テーブルの一番下から削除している場合のみ機能します。上または中から削除する場合、セルアニメーションは最後のセル、もし私が下からすべて削除していたら、助けてくれてありがとう!tableView deleteアニメーションは下から削除する場合にのみ有効

func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) { 

    if editingStyle == .Delete { 

     tableView.beginUpdates() 
     let app = UIApplication.sharedApplication().delegate as! AppDelegate 
     let context = app.managedObjectContext 
     context.deleteObject(quotesArray[indexPath.row]) 
     self.quotesArray.removeAtIndex(indexPath.row) 
     tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Automatic) 
     tableView.endUpdates() 
     self.tableView.reloadData() 

     do { 
      try context.save() 
     } catch _ { 
     } 

    } 
} 
+2

が行 'beginUpdates'、' endUpdates'と 'reloadData'を削除動作します。最初の2つは単一の削除操作には必要なく、 'deleteRowsAtIndexPaths'はテーブルビューを暗黙的に並べ替えておそらくあなたの問題を解決します。 – vadian

+0

beginUpdates、endUpdates、reloadDataを削除するとありがとう! @vadian – deniskakacka

答えて

0

削除beginUpdates、endUpdatesとreloadDataは

関連する問題