ios - How to perform action before triggering exit segue? -


i have created segue (present modally) view controller view controller b triggered through button in navigation controller of view controller a. modal takes on used send friend request typing in email. when user types in email , presses button submit friend request, want perform action triggered button (calling server send friend request , returning success if email exists or returning error if email doesn't exist). if success, want exit/unwind segue a. if error, don't want exit/unwind segue.

i have looked this question, doesn't seem have implementation of need. trying following:

class bviewcontroller: uiviewcontroller {     // button function     @ibaction func sendfriendrequest(sender: anyobject) {         println("button function.")         self.performseguewithidentifier("sendfriendrequest", sender: self)     }      override func prepareforsegue(segue: uistoryboardsegue, sender: anyobject?) {         if segue.identifier == "sendfriendrequest" {             println("preparing segue.")         }     }      override func viewdidload() {         super.viewdidload()         // additional setup after loading view.     }      override func didreceivememorywarning() {         super.didreceivememorywarning()         // dispose of resources can recreated.     }  } 

and in first view controller:

aviewcontroller: uiviewcontroller {     // unwind function     @ibaction func savefriendrequest(segue:uistoryboardsegue) {         println("finished segue.")     }      override func viewdidload() {         super.viewdidload()         // additional setup after loading view.     }      override func didreceivememorywarning() {         super.didreceivememorywarning()         // dispose of resources can recreated.     } } 

this result when set exit segue button (ctrl-drag button 'exit' in viewcontroller), calls in order:

preparing segue. finished segue. button function. 

however, don't want call prepareforsegue or unwind function every time, if server gives success message. how connect things in storyboard when call performseguewithidentifier, don't have have call other functions (prepareforsegue, etc.)?

remove exit segue button , instead link button new ibaction , insert

self.dismissviewcontrolleranimated(true, completion: nil) 

so, new code be:

@ibaction func savefriendrequest(sender: anyobject) {    //do stuff save friend request    self.dismissviewcontrolleranimated(true, completion: nil) } 

Popular posts from this blog