2015-03-22 9 views
6

Ich präsentiere dem Benutzer eine Liste von Optionen, die einen UIAlertController von einer UIToolbar mit einem bevorzugten Stil des Aktionsblatts verwenden. Wenn präsentiert, wird die popover den Pfeil abgeschnitten und seine Ecken sind mit zwei unterschiedlichen Radien abgerundet:UIAlertControllers Popover ist deformiert

Deformed UIAlertController popover

Der Code verwende ich es zu präsentieren direkt aus der Dokumentation ist, soweit ich es sehe:

UIAlertController *alertController = 
    [UIAlertController alertControllerWithTitle:@"" 
             message:@"" 
           preferredStyle:UIAlertControllerStyleActionSheet]; 
NSArray *actions = @[ 
    [UIAlertAction actionWithTitle:@"Take a Photo" 
          style:UIAlertActionStyleDefault 
          handler:^(UIAlertAction *action) {}], 
    [UIAlertAction actionWithTitle:@"Choose from Album" 
          style:UIAlertActionStyleDefault 
          handler:^(UIAlertAction *action) {}], 
    [UIAlertAction actionWithTitle:@"Cancel" 
          style:UIAlertActionStyleCancel 
          handler:^(UIAlertAction *action) {}] 
]; 
for (UIAlertAction *action in actions) { 
    [alertController addAction:action]; 
} 

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 
    alertController.modalPresentationStyle = UIModalPresentationPopover; 
    alertController.popoverPresentationController.barButtonItem = myBarButtonItem; 
} 
[self presentViewController:alertController animated:YES completion:nil]; 

Ist das ein bekannter Fehler? Ich habe ein physisches iPad auf iOS 8.2 und den Simulator auf iOS 8.1 und 8.2 ausprobiert.

+0

ich genau dieses Problem bin erlebt. Hast du Fortschritte gemacht? – devios1

+0

Was passiert, wenn Sie '@" "' durch 'nil' ersetzen? – SpaceDog

Antwort

0

Versuchen Sie explizit, die latedArrowDirections festzulegen.

Zum Beispiel in Swift:

actionSheet.popoverPresentationController?.permittedArrowDirections = UIPopoverArrowDirection.Down; 
+0

Ich war tatsächlich in der Lage, Ihr Problem zu reproduzieren und es trat auf, nachdem ich die Ausrichtung des Geräts geändert und dann wieder in die ursprüngliche Ausrichtung zurückgeschaltet. –