I have two UITableView connected through segue. I am performing segue to pass data from my firstTableView to secondTableView using tableViewCell swipe action method and saving the passed data using NSUserDefaults code works ok. But, Every time when I passed data it calls segue(I know it supposed to) and pushing to my secondTableView..I want to pass data without pushing my firstTableView to secondTableView when passing data and I have action button to access my secondController directly from mainViewController.
func tableView(_ tableView: UITableView, editActionsForRowAtIndexPath indexPath: IndexPath) -> [UITableViewRowAction]? {
    let shareAction = UITableViewRowAction(style: UITableViewRowActionStyle.normal, title: "xxxxxxxxxx") { (UITableViewRowAction, NSIndexPath) -> Void in
        self.performSegue(withIdentifier: "shareSegue", sender: indexPath)
        //   self.dismiss(animated: true, completion: nil)
    }
    return shareAction 
    }
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if (segue.identifier == "shareSegue") {
        // initialize new view controller and cast it as your view controller
        let viewController = segue.destination as! ViewController
        // your new view controller should have property that will store passed value
        viewController.labelcell = (sendSelectedData as String as String)
         }
      //// I also tried the following method with no segue but the results pretty much same....
       let storyboard = UIStoryboard(name: "Main", bundle: nil)
       let secondVC = storyboard.instantiateViewControllerWithIdentifier("secondTableView")
       self.presentViewController(secondVC, animated: true, completion: nil)
Thanks in advance!!!
