swif tableview全选
Posted 蓝天下的田埂上
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swif tableview全选相关的知识,希望对你有一定的参考价值。
func selctAll() {
idArr.removeAll()
for var i = 0; i<sellingArr.count; i++ {
let path: NSIndexPath = NSIndexPath(forRow: i, inSection: 0)
self.tableView.selectRowAtIndexPath(path, animated: true, scrollPosition: UITableViewScrollPosition.None)
}
}
//取消全选
func cancelSelectAll() {
for var i = 0; i < sellingArr.count; i++ {
let path: NSIndexPath = NSIndexPath.init(forItem: i, inSection: 0)
self.tableView.deselectRowAtIndexPath(path, animated: true)
}
tableView.setEditing(false, animated: true)
}
//代理中除了要实现必须实现的代理以外有些需要注意的地方
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCellWithIdentifier(BSManagerBaseCellID) as! BSManagerTableViewCell
cell.selectedBackgroundView = UIView()// 这句可以淡化选择时的颜色
return cell
}
//编辑时写法,OC中写法相对简单,可以百度需要的OC的同学
override func tableView(tableView: UITableView, editingStyleForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCellEditingStyle {
return UITableViewCellEditingStyle(rawValue: UITableViewCellEditingStyle.Delete.rawValue | UITableViewCellEditingStyle.Insert.rawValue)!
}
//选中时在这里操作
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let path: NSIndexPath = NSIndexPath.init(forItem: indexPath.row, inSection: 0)
let cell = tableView.cellForRowAtIndexPath(path) as! BSManagerTableViewCell
if cell.selected == true {//如果是选中状态的话,我在这里的操作是把选中cell的id放在了一个数组中。
idArr.append((sellingArr[indexPath.row]["id"] as? String)!)
}
}
//取消选中的cell状态
override func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) {
if isSelectStatus == true {//如果是选中状态的话,我在这里的操作是把选中cell的id从数组中移除。
idArr.removeAtIndex(idArr.indexOf((sellingArr[indexPath.row]["id"] as? String)!)!)
}
}
以上是关于swif tableview全选的主要内容,如果未能解决你的问题,请参考以下文章
TableView 上方的浮动/固定搜索栏 - Swift 3
iOS 中 tableView 怎么设置Cell与Cell 之间的间距
completionHandler / userCompletionHandler 问题 - Swift iOS
如何使用tableview外的按钮将tableview移动到新的tableview
tableView(cellForRowAtIndexPath) 与 tableView.cellForRowAtIndexPath()?