6

Ich möchte ein Aktionsblatt anzeigen, das direkt unter der obersten Statusleiste eingeblendet wird.So zeigen Sie UIActionSheet unterhalb der oberen Navigationsstatusleiste auf dem iPhone an

Wenn ich die navigationBar als anzuzeigende Ansicht verwende, wird das Blatt weiterhin unten auf dem Bildschirm angezeigt. Wie kann ich es stattdessen von oben zeigen?

Die Klasse ich aus den folgenden Code ein Aufruf ist ein

UIActionSheet *sheet = [[UIActionSheet alloc] initWithTitle:@"Hello" delegate:nil 
      cancelButtonTitle:nil 
      destructiveButtonTitle:nil 
      otherButtonTitles:nil]; 

UINavigationBar *navBar = self.navigationController.navigationBar; 

[sheet showInView:navBar]; 

Ich habe ‚UIViewController‘ gesehen einige Anwendungen ein Herausrutschen Schublade von einer Art aus zeigen, wo die Statusleiste ist (z. B.: Twitterrific) Wie wird das gemacht?

Antwort

4

Apple hat erklärt, dass sie einfach möchten, dass alle Aktionsblätter auf die gleiche Weise funktionieren und aus derselben Richtung einrasten. Daher gibt es keine angekündigte Möglichkeit, ihre Animationen und dergleichen leicht zu manipulieren.

+0

Was allerdings über die Lage? Das Aktionsblatt animiert nicht nur vom unteren Rand einer Ansicht, es scheint immer vom unteren Bildschirmrand zu animieren. – gerry3

+0

Nicht immer: mit einer Tab-Leiste, es zeigt von oben, es sei denn, Sie zeigenInView: auf dem äußeren Fenster. –

+0

Ich dachte, mit der Navigationsleiste, die an der Spitze platziert ist (und auch von UIView erbt), würde ich in der Lage sein, es von oben zu gleiten. Aber nein, es funktioniert nicht so. –

0

Sicher ist es möglich. Nicht wirklich einfach, aber es ist. Tun Sie es so:

UIActionSheet *sheet = [[UIActionSheet alloc] initWithTitle...]; 
sheet.transform = CGAffineTransformmakeRotation(M_PI); 
[sheet showInView:view]; 

Die Ansicht, in der es präsentiert wird (hier genannte Ansicht) sollte ebenfalls transformiert werden. Hat auch:

view.transform = CGAffineTransformMakeRotation(M_PI); 

Verwendung zum Beispiel eine leere Ansicht, die nur die Aufgabe hat diese ActionSheet zu präsentieren.

Ich hoffe, es war understanable. ^^

Sandro Meier

+0

Dies kehrt sowohl das Blatt als auch die Ansicht um; Aber wenn die Ansicht Dinge enthält, werden sie auf den Kopf gestellt. – user1071136

Verwandte Themen