3

According to the documentation, action extensions appear in an action sheet or full-screen modal view. But for IPhone portrait orientation it is always fullscreen by default. How can I present the action extension view in an action sheet for the iPhone portrait orientation?

I have tried setPreferredContentSize and NSExtensionActionWantsFullScreenPresentation. Both seems to have no effect in iPhone portrait orientation.

Harikrishnan R
  • 150
  • 1
  • 12

1 Answers1

10

There's no way for an action extension to be non-fullscreen on iPhone.*

The alternative presentation when NSExtensionActionWantsFullScreenPresentation is false is equivalent to UIModalPresentationFormSheet. Form Sheet presentation is non-fullscreen only on iPad — it's the presentation style you see for things like composing a new message in Mail, or viewing app details in the App Store. You can still choose form sheet presentation on iPhone,* but it behaves equivalent to fullscreen.

* Well, sort of. It's not actually iPhone vs iPad that makes form sheet be fullscreen, but horizontally compact vs horizontally regular size class. Which means that form sheet is non-fullscreen on iPhone 6/6s Plus in landscape orientation, but not in portrait orientation or on other iPhone models.

rickster
  • 124,678
  • 26
  • 272
  • 326