Select multiple rows in tableview and tick the selected ones

前端 未结 5 1684
北海茫月
北海茫月 2020-12-12 17:34

I\'m loading a tableView from a plist file. This works with no problems. I just simply want to \"tick\" the selected rows. At the moment, with my code it didn\'t work as des

5条回答
  •  盖世英雄少女心
    2020-12-12 18:20

    There are many solutions to this problem, here's one I came up with. I am using the built in cell "selected" property so the tableview saves it for us. Just make sure in your storyboard or when you setup the tableview in code you use multiple selection.

    import UIKit
    
    class TableViewController: UITableViewController
    {
        var lastSelectedIndexPath = NSIndexPath(forRow: -1, inSection: 0)
    
        override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
        {
            let cell = tableView.dequeueReusableCellWithIdentifier("myCell", forIndexPath: indexPath) as! UITableViewCell
    
            // Configure the cell...
            cell.textLabel!.text = "row: \(indexPath.row)"
    
            if cell.selected
            {
                cell.accessoryType = UITableViewCellAccessoryType.Checkmark
            }
            else
            {
                cell.accessoryType = UITableViewCellAccessoryType.None
            }
    
            return cell
        }
    
        override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
        {
            let cell = tableView.cellForRowAtIndexPath(indexPath)
    
            if cell!.selected == true
            {
                cell!.accessoryType = UITableViewCellAccessoryType.Checkmark
            }
            else
            {
                cell!.accessoryType = UITableViewCellAccessoryType.None
            }
        }
    
        override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
        {
            return 100
        }
    }
    

    I made a sample project here: https://github.com/brcimo/SwiftTableViewMultipleSelection

提交回复
热议问题