title: View controller existed twice when push into it again
body: <p>Here is my situation. </p>
  
  <p>I have two iPods (ios systems) that communicated with each other via Bluetooth. iPod A is used as a UI to navigate, and iPod B is used as functional one to collect data. </p>
  
  <p>iPod A has five view controller, say A-B-C-D-E-F. At view controller E, it will send signal to iPod B, and iPod B will send back another signal to iPod A (view controller E) when it finished data collection. </p>
  
  <p>For all the connections from A to E, I used "Button-touch up inside" in the storyboard and the code is</p>
  
  <pre><code>- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
  {
      [[segue destinationViewController] editSetting:self.aSettings];
  
  }
  </code></pre>
  
  <p>From E to F, I created new view controller:</p>
  
  <pre><code>VasViewController * controller2=[self.storyboard instantiateViewControllerWithIdentifier:@"vascontroller"];
          controller2.aSettings= self.aSettings;
  [self presentViewController:controller2 animated:NO completion:nil];
  </code></pre>
  
  <p>From F to A, I used "Button-touch up inside" again</p>
  
  <p>After the first round, I asked iPod A to go back to root controller A and move to E again, which gives A-B-C-D-E-F-A-B-C-D-E. Same thing as previous step again. Then the problem shows: when iPod B send a signal back, both view controller Es will react to this single signal. </p>
  
  <p>I am wondering whether there are some ways to make the first view controller E disappear when it goes back to root view controller A? (I feel when it goes back to A, and then to E, everything is created again, but not sure how to fix it.)</p>
  
  <p>Thanks</p>