我喜欢将行移至bottom
的{{1}}和table
我喜欢它以便在我再次访问屏幕时看到我的更改,如果{{ 1}}。我做了以下但是行没有移动
persist
如何解决此问题?
答案 0 :(得分:0)
您正在滚动到IndexPath(row: 0, section: 0)
,这意味着第一部分的第一行,这意味着它将滚动到顶部。
如果您只有1个部分,请更改:
IndexPath(row: 0, section: 0)
进入
let numberOfRows // How many rows you have?
IndexPath(row: numberOfRows - 1, section: 0)
如果您有多个部分和多个行,请改为:
let numberOfSections // How many sections you have
let numberOfRowsInLastSection = tableView.numberOfRows(inSection:numberOfSections-1)
IndexPath(row: numberOfRowsInLastSection-1, section: numberOfSections-1)
答案 1 :(得分:0)
tableView.scrollToRow(at: IndexPath(row: 0, section: 0), at: .bottom, animated: true)
不会移动单行,它会尝试以给定索引路径(0,0)的行位于给定位置(底部)的方式滚动整个表视图。
听起来你想重新排序细胞。为此,你必须:
夫特:
func moveRow(at indexPath: IndexPath,
to newIndexPath: IndexPath)
答案 2 :(得分:0)
如果您想移动行,则需要执行此操作。
override func tableView(tableView: UITableView, canMoveRowAtIndexPath indexPath: NSIndexPath) -> Bool {
return true}
override func tableView(tableView: UITableView, moveRowAtIndexPath fromIndexPath: NSIndexPath, toIndexPath: NSIndexPath) {
var itemToMove = tableData[fromIndexPath.row]
tableData.removeAtIndex(fromIndexPath.row)
tableData.insert(itemToMove, atIndex: toIndexPath.row)
}