-1

Can someone help me delete a table view cell. I would like to be able to swipe left and have a delete option. Sorry, I know this is simple but I'm still learning how to code. I am using Parse. Thank you!

import UIKit

class MasterTableViewController: UITableViewController, PFLogInViewControllerDelegate, PFSignUpViewControllerDelegate {

var noteObjects: NSMutableArray! = NSMutableArray()

override func viewDidLoad() {
    super.viewDidLoad()

    // Uncomment the following line to preserve selection between presentations
    // self.clearsSelectionOnViewWillAppear = false

    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
    // self.navigationItem.rightBarButtonItem = self.editButtonItem()
}

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)

    if (PFUser.currentUser() == nil) {


    }else {

        self.fetchAllObjectsFromLocalDatastore()
        self.fetchAllObjects()

    }

}

func fetchAllObjectsFromLocalDatastore() {

    var query: PFQuery = PFQuery(className: "Note")

    query.fromLocalDatastore()

    query.whereKey("username", equalTo: PFUser.currentUser()!.username!)

    query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in

        if (error == nil) {

            var temp: NSArray = objects!;  NSArray.self

            self.noteObjects = temp.mutableCopy() as! NSMutableArray

            self.tableView.reloadData()

        }else {


        }

    }

}

func fetchAllObjects() {

    PFObject.unpinAllObjectsInBackgroundWithBlock(nil)

    var query: PFQuery = PFQuery(className: "Note")

    query.whereKey("username", equalTo: PFUser.currentUser()!.username!)

    query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in

        if (error == nil) {

            PFObject.pinAllInBackground(objects, block: { (success, error) in
                if error == nil {
                    self.fetchAllObjectsFromLocalDatastore()
                }
            })
        }else {

            println(error!.userInfo)

        }

    }

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}


// MARK: - Table view data source

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    // #warning Potentially incomplete method implementation.
    // Return the number of sections.
    return 1
}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    // #warning Incomplete method implementation.
    // Return the number of rows in the section.
    return self.noteObjects.count
}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = self.tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! MasterTableViewCell




    var object: PFObject = self.noteObjects.objectAtIndex(indexPath.row) as! PFObject

    cell.masterTitleLabel?.text = object["title"] as? String
    cell.masterTextLabel?.text = object["text"] as? String

    return cell
}

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {


    self.performSegueWithIdentifier("editNote", sender: self)
}





override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {


    var upcoming: AddNoteTableViewController = segue.destinationViewController as! AddNoteTableViewController

    if (segue.identifier == "editNote") {

        let indexPath = self.tableView.indexPathForSelectedRow()!

        var object: PFObject = self.noteObjects.objectAtIndex(indexPath.row) as! PFObject

        upcoming.object = object

        self.tableView.deselectRowAtIndexPath(indexPath, animated: true)

    }

}

}
Eric Aya
  • 69,473
  • 35
  • 181
  • 253
John Harris
  • 109
  • 1
  • 1
  • 9
  • 2
    Its already answered here http://stackoverflow.com/questions/8983094/how-to-enable-swipe-to-delete-cell-in-a-tableview – Prabhu.Somasundaram Aug 22 '15 at 08:35
  • Please see: [Why is β€œCan someone help me?” not an actual question?](http://meta.stackoverflow.com/q/284236) – Raedwald Dec 29 '20 at 15:49

1 Answers1

1

use this code

func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
if editingStyle == UITableViewCellEditingStyle.Delete {
    langData.removeAtIndex(indexPath.row) //langData is array from i delete values
    tableView.deleteRowsAtIndexPaths([indexPath],  withRowAnimation: UITableViewRowAnimation.Automatic)
}
}

hope it may help you for more visit here

Community
  • 1
  • 1
Subhash Sharma
  • 745
  • 6
  • 24