Kann jemand ein Beispiel geben, wie man die Ansicht einer Monotouch-Anwendung von Hochformat auf Querformat und umgekehrt dreht?Monotouch Ansicht im Hochformat/Querformat drehen
Antwort
Das können Sie ausprobieren.
Wenn Sie die Ausrichtung der Ansicht ändern möchten, während auf der Ansicht zu berühren, dann die Schritte
Implementieren Sie die touchesBegan Methode innerhalb der Ansicht.
Im touchesBegan Verfahren die aktuelle Geräteausrichtung, überprüfen
[[UIDevice currentDevice] orientation];
Wenn Sie die CGAffineTransformation Methode auf der Ansicht ändern möchten verwenden, um die Ausrichtung dann als
viewRef.transform = CGAffineTransformMakeRotation(angle);
Wenn Sie das Set Geometrie Ihrer UI-Elemente in Interface Builder, stellen Sie dann sicher, dass Sie die Autosizing Attribute im Größeninspektor (Cmd + 3) festlegen. Sie können dann sehen, wie die Ansicht nach dem Drehen aussieht, indem Sie auf den kleinen "Drehen" -Knopf oben links in der Titelleiste Ihrer Ansicht in Interface Builder klicken.
Sobald Sie alle haben, die eingerichtet haben, außer Kraft setzen nur die folgende Methode in Ihrem Viewcontroller:
public override bool ShouldAutorotateToInterfaceOrientation (UIInterfaceOrientation toInterfaceOrientation)
{
return true;
}
nun im Simulator, Sie alle drehen können Sie und Ihre UI wird automatisch anzupassen.
Nur damit jeder weiß, es ist jetzt auf die Ansichten Transform-Objekts:
View.Transform.Rotate(3.14159f * 0.5f);
Für alle Typen wie mich Dotnet, die nicht wollen, etwas verwenden, die CGAffineTransform ist, dachte, es andere Dinge brechen , Probier es einfach. Arbeitete großartig für meine Instanz. Die NavigationController.View wurde gedreht und alles darin ist perfekt.
das rotiert nur eine bestimmte Ansicht, wenn es in einem UINavigationController ist, wird die Navigationssteuerleiste auf der falschen Seite des Bildschirms sein. –
Gees, ich konnte nicht glauben, wie einfach das war! :) Dies sollte auf jeden Fall als die richtige Antwort gekennzeichnet werden. Vielen Dank. – BruceHill