小编M. *_*oot的帖子

从 SwiftUI 的 ScrollView 列表中获取 onAppear 行为

以您期望的方式为该列表中的元素创建List视图时onAppear:只要滚动到该元素,onAppear就会触发。但是,我正在尝试实现这样的水平列表

ScrollView(.horizontal) { 
   HStack(spacing: mySpacing) {
      ForEach(items) { item in 
         MyView(item: item)
            .onAppear { \\do something }
      } 
   }
}
Run Code Online (Sandbox Code Playgroud)

使用此方法onAppear一次触发所有项目,也就是说:立即,但我想要与List视图相同的行为。我该怎么做呢?是否有手动触发 onAppear 或控制视图加载的方法?

为什么我要实现这一点:我制作了一个自定义Image视图,仅当它出现时才从 URL 加载图像(并同时替换占位符),这对于List视图来说效果很好,但我也希望它为我的水平“列表”工作。

swiftui

12
推荐指数
1
解决办法
1920
查看次数

如何在SwiftUI中访问安全区域大小?

我想在SwiftUI中手动将视图的框架高度设置为屏幕安全区域的大小。获取屏幕边界(UIScreen.main.bounds)很容易,但是我找不到找到安全区域大小的方法。

swiftui

1
推荐指数
5
解决办法
711
查看次数

标签 统计

swiftui ×2