Frage

Wie kann ich manuell eine Ansicht mit dem autoresizingMasks drehen, als ob der Benutzer das Telefon gedreht hatte und sie hatte diese automatisch gedreht. Auch ich will es sofort, keine Animation sein. Ich möchte Sie wissen, warum ich diese benötigen, schauen Sie sich meine andere Frage an iPhone Dev - Schnittstelle Rotation halten .

Danke !!

War es hilfreich?

Lösung

Was wollen Sie hier zu tun ist, verwenden Affine Ihre Ansicht drehen verwandelt, ich dies erreicht haben, obwohl ich den Code vor mir im Moment nicht haben. Wenn Sie eine einfache Drehung youll tun feststellen, dass Ihre Ansicht wird in der Mitte abgeschnitten und nicht wie youd wollen, was Sie hier tun müssen, um eingestellt wird, um den Anker Ihrer Schicht (mit dem Wert spielen, um bis Sie bekommen, was Sie wollen) damit die Ansicht angezeigt werden, wo Sie es wollen. Die Art und Weise, diesen zu Ansatz ist einfach nicht die 90-Grad-Drehung affine Transformation und sehen Sie die Auswirkungen auf die Aussicht. Auf diese Weise sollten Sie in der Lage sein, um herauszufinden, wo Sie Schichten Anker sein muss. Ill Post einig Beispiel-Code hier später, als ich infront meinen Mac bin. Hoffe, es hilft

Andere Tipps

ich din't ganz verstehen, was Sie mit

  

"... die autoresizingMasks mit ..."

habe ich das gleiche mit UIIView Animation. Es gibt viele andere Techniken auch dort. hier ist mein Code:

-(void)rotateToLandscape
{
UIWindow *win = [[UIApplication sharedApplication]keyWindow];
if(UIInterfaceOrientationIsPortrait(self.interfaceOrientation)){
    [[[UIApplication sharedApplication] keyWindow] setBackgroundColor:[UIColor blackColor]];
    [UIView beginAnimations:@"View Flip" context:nil];
    [UIView setAnimationDuration:0.3];
    [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
    win.transform = CGAffineTransformIdentity;
    win.transform = CGAffineTransformMakeRotation(degreesToRadian(90));
    win.bounds = CGRectMake(0.0f, 0.0f, 480, 320);
    win.center = CGPointMake(160.0f, 240.0f);
    [UIView commitAnimations];
}   

}

// Ich hoffe, der Code nicht Erklärung benötigt.
// Sie können die Animation Anweisungen entfernen, um den Effekt zu erhalten Sie wollen (un-animiert).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top