Swiping between Watch Now Playing Screen blanks other screen

Hi,


I setup the Now Playing screen on my Watch App as per the instructions from Apple - Adding a Now Playing View in Xcode Version 11.1 (11A1027) and from the main screen I go to the next set of screens like this -


@IBAction func startButtonPressed() {
  WKInterfaceDevice.current().play(.start)
  WKInterfaceController.reloadRootPageControllers(withNames: ["WorkoutSession", "NowPlaying"], contexts: [0], orientation: WKPageOrientation(rawValue: 0)!, pageIndex: 0)
 }


The problem is that when I swipe a few times between the WorkoutSession screen and the Now Playing Screen my workout screen goes blank. Ive tried it with a simple label on a blank screen and it does the same thing, no matter what is on the screen the Now Playing screen blanks the other one. This is on a physical watch not the simulator. Is it because of the way Im navigating to the workout screen and the Now playing screen using

WKInterfaceController.reloadRootPageControllers
because this is the only way I can make sure there is no close or go back or wipe back action that would wreak the workout session.

Anyone else had this problem with the Now Playing Screen?

Replies

In the doc they say you just have to present the Now Playing Controller you have created in IB.


So why don't you just call

       presentController(withName: "NowPlaying", context: self)


I understand the system will manage it all.