代码之家  ›  专栏  ›  技术社区  ›  GarySabo

将上下文传递给多个InterfaceControllers?

  •  0
  • GarySabo  · 技术社区  · 7 年前

    我使用ReloadRootPageController加载4个InterfaceControllers,我需要向每个InterfaceControllers传递一个上下文,但是使用下面的代码,只有数组中的第一个InterfaceControllers接收上下文。我怎样才能把它传给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)
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Ryan    7 年前

    您需要使用具有相同数量的 contextDictionary 具有 withNames 大堆

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