WatchOS 7 UX Question Vertical page navigation and supporting multiple item complications

WatchOS 7 supports having complications which can show different items simultaneously. For example a weather app that has multiple cities can show complications for weather in New York City, San Francisco and Boston either all on the same watch face or multiple. This is great!

Following the "last selected item in the app becomes the item for complication" strategy taken in the Apple Stocks app no longer applies here. The Stocks app has not been updated to show multiple complications where each complication can show a different stock.

Now, let's say that I'm working on a Stocks like app.

If I were to leave out the last selected item strategy then what should happen when the user taps on a complication for a given stock?

If the strategy becomes "that's easy - simply do a segue using performSegue() to the detail screen for that stock" there's an issue. The app may already be in a segue for some other stock. There is no public API for dismissing a segue programatically.

So what should one do? I'm hesitant to remove the vertical page navigation, since it works so well.

This is further complicated by the issue that in addition to unique complications per stock, I also want to keep the "last selected item in the app becomes the item for complication" paradigm.

Picture this:
  1. If a user taps on a complication setup for the last selected item in app, then upon tapping on that complication I'd like to do a segue to the appropriate detail screen.

  2. If a user taps on a complication setup for a specific item, then upon tapping on it I'd like to do a segue to that item. But then this will cause the last selected item to be modified. I can live with that.

All suggestions are welcome. Thanks in advance

Answered by sal_from_new_york in 639555022
Since it is possible to programmatically unwind from a detail screen in WatchOS using either pop() or popToRootController(), it'll be easy to achieve the desired effect.

Thanks
Accepted Answer
Since it is possible to programmatically unwind from a detail screen in WatchOS using either pop() or popToRootController(), it'll be easy to achieve the desired effect.

Thanks
WatchOS 7 UX Question Vertical page navigation and supporting multiple item complications
 
 
Q