使用SwiftUI和Combine可以根据授权状态有条件地显示视图?

时间:2020-08-10 15:57:55

标签: ios swift swiftui healthkit combine

我正在构建一个UI,该视图中要根据HealthKit是否已被授权在其中显示“启用”按钮或绿色复选标记。我还希望该视图具有反应性,以便一旦您授权HealthKit,该视图就会从按钮动态变为选中标记,但是我无法弄清楚如何正确实现这两种通信方式以及使用哪种属性包装器:

data_path_list <- list.files(path = getwd(), recursive = T, pattern = "\\QVDR.csv", full.names = T)

data <- do.call(rbind, lapply(data_path_list, function(x) {
  read.csv(x, skip = 3)
})) %>% 
  mutate(
    Source = data_path_list
  )

1 个答案:

答案 0 :(得分:2)

尝试添加@ObservedObject var healthKitAuthManager = HealthKitAuthManager()而不是let healthKitAuthManager = HealthKitAuthManager()。这样@Published变量将触发新的视图呈现。