Show Large 3D Touch Shortcut Widget

1k views Asked by At

In iOS 10, when 3D touching on your app, a widget for the app appears along with 3D touch shortcuts. That widget is automatically the small version of your app's widget; is there any way to make that widget the large version of the widget (which is normally viewed by pressing Show More on the widgets screen)?

How can I make the widget that appears when 3D touching my app the large version of my app's widget (which normally appears when pressing Show More)?

2

There are 2 answers

1
Jonathan Thornton On BEST ANSWER

The 3D Touch widget height is a system-level restriction. (You’ll notice that even Apple doesn’t override it for first-party apps.)

This is because the Quick Action menus themselves can get pretty tall, and widgets’ heights are effectively unlimited. And because one possible method of interacting with the Quick Action menu is sliding your finger up/down from where you pressed, scrolling is obviously out of the question.

As for how to work around this by getting rid of the widget altogether, it seems that iTunes Connect checks the value for the UIApplicationShortcutWidget key to ensure that the given bundle identifier actually exists and rejects the app if it doesn’t. The UIApplicationShortcutWidget key is officially defined so that, if an app has multiple widgets, it can choose which to show in the 3D Touch context.

Until Apple reverses this policy—and I wouldn’t hold my breath since this is something of an edge case—your only workarounds are to have that ignorable widget, or to reconsider the widget experience altogether.

Personally, I’d recommend reconsidering the widget altogether, since Apple recommends that widgets aren’t just “launch buttons” as you suggest, even when in the small size. Per the Human Interface Guidelines, widgets are to be used for “glanceable” information or simple interactions outside the app. Is there other useful information/functionality that you could place in the top 110 points in place of the launch button?

In addition, of course, you can always file a bug as an enhancement to see if Apple would be willing to entertain the idea. I suspect that it would involve the addition of a separate Info.plist key, probably a Boolean telling iOS whether a widget is desired in that context at all.

1
Victor Carmouze On

It's actually impossible. The short version of your widget is displayed when 3D Touching your app icon.

It also gives you the possibility to add it to your widget center. It's only there that you can see the full version by pressing the show more button.