我有一个有桌面视图的应用。每分钟左右我都希望UITableView的第一行消失。让动画关闭会很不错。我假设我需要使用这样的东西:
let myNSIndexPath = [NSIndexPath(forRow: 0, inSection: 0)]
mainTableView.deleteRowsAtIndexPaths(myNSIndexPath, withRowAnimation:UITableViewRowAnimation.Fade)
这不起作用。我不确定如何正确使用IndexPath。我的表只有一个部分,我总是希望删除索引0处的单元格。要使其正常工作,必须采取哪些措施?
答案 0 :(得分:3)
单程
使用 removeAtIndex
yourarray.removeAtIndex(indexPath.row)
不要忘记重新加载表格视图
tableView.reloadData()
第二种方式
yourIndexPath = [NSIndexPath(forRow: 0, inSection: 0)]
yourtable.beginUpdates() //if you are performing more than one operation use this
yourarray.removeObjectAtIndex(myNSIndexPath.row)
yourtable.deleteRowsAtIndexPaths(NSArray(object: yourIndexPath), withRowAnimation: UITableViewRowAnimation.Left)
yourtable.endUpdates() //if you are performing more than one operation use this
从
获得帮助答案 1 :(得分:2)
你可以删除这样的第一个单元格。
单程
let myNSIndexPath = [NSIndexPath(forRow: 0, inSection: 0)]
self.tableView.beginUpdates()
self.arrayData.removeObjectAtIndex(myNSIndexPath.row) // also remove an array object if exists.
self.tableView.deleteRowsAtIndexPaths(NSArray(object: myNSIndexPath), withRowAnimation: UITableViewRowAnimation.Left)
self.tableView.endUpdates()
第二种方式
yourArr.removeAtIndex(0)
self.tableView.reloadData()
答案 2 :(得分:0)
在SWIFT 4中
您可以像这样删除行。
let indexPathRow=sender.tag
let indexPath = IndexPath(row: indexPathRow, section: 0)
arrayList.remove(at: indexPathRow)
mainTableView.deleteRows(at: [indexPath], with: .none)