Ziel c - UIActivityViewController-Orientierungsmodus

Meine iPhone-App ist so konzipiert, dass sie nur die Ausrichtung im Hochformat unterstützt, mit Ausnahme eines Ansichtscontrollers, der Fotos anzeigt, und des Querformatmodus.

Insgesamt unterstützt mein Projekt also alle Ausrichtungen, aber jeder Ansichts-Controller (mit Ausnahme des Foto-Ansichts-Controllers) implementiert die Methode:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}  

Das Problem:

In einem meiner (nur Hochformat-) Ansichtscontroller verwende ichUIActivityViewController Damit kann der Benutzer Inhalte per E-Mail oder SMS freigeben.

Wenn der Benutzer die E-Mail-Option auswählt, wird automatisch der native E-Mail-Ansichtscontroller des ios angezeigt.

Wenn der Benutzer jetzt die Ausrichtung des Geräts in Querformat ändert, ändert sich auch der E-Mail-Ansichts-Controller in Querformat. Wenn der Benutzer nun auf die Schaltfläche Abbrechen / Senden tippt, wird der E-Mail-Controller geschlossen und meine gesamte App befindet sich im Querformat.

Gibt es eine Möglichkeit, den eamil-Ansichtscontroller zu zwingen, sich nur im Hochformat zu befinden?

Ich weiß, dass ich meine eigene E-Mail-Ansichtskontrolle und Unterklasse erstellen kannUIActivity um es zu zeigen, aber als dieUIActivityViewController Es wird nicht das Standard-E-Mail-Symbol angezeigt, wenn es angezeigt wird, und ich mag es wirklich, wenn es angezeigt wird, und nicht ein anderes (muss grau sein) Symbol, das ich bereitstellen werde.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage