The top three answers can solve my questions. It's hard to choose which one is the best. So, I just choose the one who answers my question first. Sorry for the amateur and enthusiastic iOS. Thanks for the help. I appreciate it.

ViewController 1 has a table view.
My question is how to reload the table view only if I click back from view controller 2, and not reload the table view if I click back from view controller 3.
Right now my code for the return button is
@IBAction func backButtonTapped(sender: AnyObject) {
self.dismissViewControllerAnimated(true, completion: nil)
}
In view controller 1. I know that the table view will be reloaded from view controller 2 or 3
override func viewDidAppear(animated: Bool) {
loadTable()
}
loadTable() viewDidLoad "" 2. .
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let controller = storyboard.instantiateViewControllerWithIdentifier("UserHomePageViewController") as! UserHomePageViewController
controller.viewDidLoad()
, ? .
EDIT:
, , , . , , viewDidAppear reloadTableBool. ? ? . .
class 2ViewController
@IBAction func backButtonTapped(sender: AnyObject) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let controller = storyboard.instantiateViewControllerWithIdentifier("1ViewController") as! 1ViewController
print("viewcontroller2 before call: \(controller.reloadTableBool)")
controller.reloadTableBool = false
print("viewcontroller2 after call: \(controller.reloadTableBool)")
self.dismissViewControllerAnimated(true, completion: nil)
}
class 1ViewController
var reloadTableBool = true
override func viewDidAppear(animated: Bool) {
print("viewcontroller1: \(reloadTableBool)")
if reloadTableBool == true {
loadTable()
}
}
2,
viewcontroller2 before call: true
viewcontroller2 after call: false
viewcontroller1: true