将上下文传递给多个 InterfaceControllers?

Passing a context to multiple InterfaceControllers?

我正在使用 reloadRootPageControllers 加载 4 个 InterfaceController,我需要向每个 InterfaceController 传递上下文,但是使用下面的代码,只有数组中的第一个 InterfaceController 接收上下文。我怎样才能将它传递给所有 4 个?

let contextDictionary = ["workoutConfiguration" : workoutConfiguration, "ActivityType": selectedActivityType, "workoutManager" : workoutManager] as [String : Any]


        WKInterfaceController.reloadRootPageControllers(withNames: ["WorkoutControlsInterfaceController", "MainDisplayInterfaceController", "SpeedInterfaceController", "CaloriesAndDistanceInterfaceController"],
                                                        contexts: [contextDictionary],
                                                        orientation: .horizontal,
                                                        pageIndex: 1)

您需要使用与 withNames 数组具有相同数量 contextDictionary 的数组。

WKInterfaceController.reloadRootPageControllers(withNames: ["WorkoutControlsInterfaceController", "MainDisplayInterfaceController", "SpeedInterfaceController", "CaloriesAndDistanceInterfaceController"],
                                                    contexts: [contextDictionary, contextDictionary, contextDictionary, contextDictionary],
                                                    orientation: .horizontal,
                                                    pageIndex: 1)