2016-08-04 13 views
2

Subview offen war dieses Stück Code unter Verwendung von Controller A.Do Aktion nach subview removeFromSuperview (Ios Swift)

let popOverVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("test") as! DatepickerpopupViewController 
    self.addChildViewController(popOverVC) 
    popOverVC.view.frame = self.view.frame 
    self.view.addSubview(popOverVC.view) 
    popOverVC.didMoveToParentViewController(self) 

Und Subview geschlossen wurde mit diesem Code von Steuerung B

UIView.animateWithDuration(0.25, animations: { 
     self.view.transform = CGAffineTransformMakeScale(1.3, 1.3) 
     self.view.alpha = 0.0; 
     }, completion:{(finished : Bool) in 
      if (finished) 
      { 

       self.view.removeFromSuperview() 


      } 
    }); 

Nun, was Ich möchte etwas in der übergeordneten Ansicht (Controller A) tun, nachdem Subview geschlossen wurde.

Antwort

1

Zwei Ansichtssteuerungen, die mit derselben Ansicht verwirren, sind schlechtes Design. Ändern Sie Ihr Design, so dass nur ein Ansichtscontroller die Ansicht besitzt. Dann reagiert man auf die Veränderung natürlich. Controller B würde dann sagen Controller A"entfernen Sie die Unteransicht" und Controller A würde dann die Animation und was auch immer Sie danach tun wollen.

Wie Sie das genau machen, hängt sehr stark von Ihrem Controller und dem Design der App ab. Wie Sie dies genau tun können, ist hier nicht möglich.

Verwandte Themen