2016-04-06 32 views
0

Ich benutze zwei Tasten button1 und button2 und eine view1, Wenn ich den button2 klicke, sollte der view1 Rahmen auf eine bestimmte Höhe angehoben werden und wenn button2 gedrückt wird, sollte view1 in die normale Position (ursprüngliche Position) freigegeben werden bitte helfe mit dem Code.Wie ändere ich den UIView Rahmen während des Klickens?

- (IBAction)button2:(id)sender { 

    [liftView setFrame:CGRectMake(2.0, 3.0, 200.0, 10.0)]; 
} 
- (IBAction)button1:(id)sender { 

    //here i need the view back to the original position 
} 
+0

Können Sie Ihre Codes anzeigen? Setzen Sie sie in Ihre Frage ein, indem Sie sie bearbeiten. – Raptor

+0

ok. Ich werde jetzt hinzufügen – Arun

+0

@ Raptor Ich habe den Code hinzugefügt. – Arun

Antwort

1

Da Auto-Layout nicht verwendet wird, setFrame: können das Layout wie folgt anzupassen verwendet werden:

CGRect originalFrame; 

- (IBAction)button2:(id)sender { 
    originalFrame = liftView.frame; 
    [liftView setFrame:CGRectMake(2.0, 3.0, 200.0, 10.0)]; 
} 
- (IBAction)button1:(id)sender { 
    // set the view back to the original position 
    [liftView setFrame:originalFrame]; 
} 

Hier habe ich eine Variable originalFrame die ursprüngliche Bildgröße zu speichern, verwenden.

Optional können Sie die setFrame: mit UIAnimation umhüllen, so dass die Layoutänderung animiert werden kann.

+0

hat perfekt funktioniert. Danke – Arun