2016-07-12 15 views
-1

Ich führe Flip View-Übergang auf zwei Ansichten, die in einer Container-Ansicht begrenzt sind. Flippng sie zum ersten Mal funktioniert gut. Beim zweiten Mal wird Frame nicht mehr angezeigt.Subviews verschwinden beim zweiten Wechsel des Flip-Übergangs?

wie

[<UIView: 0x7fc2316aa030; frame = (-154 -529; 0 0); autoresize = RM+BM; layer = <CALayer: 0x7fc2316aa1a0>>] 

Nach erneuten Spiegeln, zeigt es Container-Ansicht.

Es funktioniert gut, wenn ich "Auto-Layout verwenden" in meinem Projekt deaktivieren.

Aber was mache ich, wenn ich AutoLayout verwende ???

Hier Code:

@IBAction func flipViews() 
{ 
    if a==false 
    { 

     UIView.transitionFromView(new, toView: old, duration: 1, options: .TransitionFlipFromLeft, completion: {(isFinished : Bool) 
      in 

      print(self.view_Effects.subviews) 
      // self.old.frame=self.view_Effects.frame 

      }) 
     a=true 
    } 
    else 
    { 
     UIView.transitionFromView(old, toView: new, duration: 1, options: .TransitionFlipFromLeft, completion:{(isFinished : Bool) 
      in 
      print(self.view_Effects.subviews) 
      //self.view_Effects.hidden=true 
      //self.new.frame=self.view_Effects.frame 
     }) 
     a=false 
    } 
+0

wo ist der Code? Bitte bearbeiten Sie Ihre Frage richtig. – Madhu

Antwort

0

Als ich meine Ansichten abstecken, alle gut funktionieren beginnen. Wenn Sie eine Transformation durchführen, ist es wichtig, sich daran zu erinnern, dass das automatische Layout die Grenzen und den Rahmen Ihrer Ansichten basierend auf den von Ihnen festgelegten Einschränkungen berechnet. Also, in meinem Fall habe ich gerade meine vertikale und horizontale Ausrichtung, Breite und Höhe zu meiner gedrehten Ansicht hinzugefügt, so dass der automatische Layout-Mechanismus weiß, wann genau meine Ansicht ist. Und alles geht gut. Hier ist ein gutes Tutorial Tutorial http://www.raywenderlich.com/50319/beginning-auto-layout-tutorial-in-ios-7-part-1