Patrick Perini
Patrick Perini

Reputation: 22633

WKInterfaceMenu sets model InterfaceController as root InterfaceController

When bringing up a menu from a modal WKInterfaceController presented from the rootController via presentControllerWithName:context:, the modal controller becomes the root controller:

enter image description here <— Modal (see Cancel)

enter image description here <— Menu

enter image description here <— Root? (no Cancel)

Is this a WatchKit bug, or are modal controllers not meant to have menus?

"Solution"

Since this is a known bug, my temporary workaround was just to add a Cancel button to the modal controller and use reloadRootControllersWithNames:contexts: to present them as root. The Cancel button reloads the root controller to my initial root controller.

Upvotes: 0

Views: 494

Answers (1)

Mike Swanson
Mike Swanson

Reputation: 3347

This is a known bug that is present in WatchKit/iOS 8.2 and 8.3. The issue occurs when you present a modal interface that then presents another modal interface on top (like the Force Touch menu).

You can find a (nasty) workaround here: Apple Watch: Status bar not visible after presenting a modal screen from page based navigation

Upvotes: 2

Related Questions