Swiftui 迅捷:翠鸟KF图像在LazyHStack中闪烁图像
LazyHStask中的KFImage在拖动视图时闪烁图像,尽管我已将Swiftui 迅捷:翠鸟KF图像在LazyHStack中闪烁图像,swiftui,kingfisher,Swiftui,Kingfisher,LazyHStask中的KFImage在拖动视图时闪烁图像,尽管我已将loadDiskFileSynchronously()设置为视图 我怀疑KFImage每次调用其onAppear()时都会加载图像,并使图像闪烁。 但KFImage似乎可以防止在其onAppear()中重新加载图像。 我怎样才能解决这个问题 这是重现问题的示例代码段 struct SampleView:View{ 允许URL:[URL?] @GestureState专用变量draggingOffset:CGFloat=0 @
loadDiskFileSynchronously()
设置为视图
我怀疑KFImage每次调用其onAppear()
时都会加载图像,并使图像闪烁。
但KFImage似乎可以防止在其onAppear()中重新加载图像。
我怎样才能解决这个问题
这是重现问题的示例代码段
struct SampleView:View{
允许URL:[URL?]
@GestureState专用变量draggingOffset:CGFloat=0
@国家私有风险值指数:Int=0
初始化(URL:[URL?]){
self.url=url
}
var body:一些观点{
懒散钉(间距:0){
ForEach(url.index,id:\.self){位置在
KFImage(URL[位置])
.可调整大小()
.loadDiskFileSynchronously()
.frame(宽度:UIScreen.main.bounds.width,对齐:。中心)
.scaledofit()
}
}
.frame(宽度:UIScreen.main.bounds.width,高度:UIScreen.main.bounds.height,对齐:。前导)
.offset(x:-CGFloat(索引)*UIScreen.main.bounds.width)
.偏移量(x:DragingOffset)
.animation(.interactiveSpring(),值:index)
.animation(.interactiveSpring(),值:draggingOffset)
.手势(
德拉格斯特尔()
.updateing($draggingOffset){value,state,uu中
状态=value.translation.width
}
.onEnded{中的值
让偏移量=value.translation.width/UIScreen.main.bounds.width
设newIndex=(CGFloat(index)-offset.roughed()
index=min(max(Int(newIndex),0),url.count-1)
}
)
}
}