Okz*_*pes 4 xcode ios swiftui combine ios13.3
当变量值改变时,我使用 sink 方法调用函数。代码适用于 iOS 13.2.2 但不适用于 iOS 13.3。当 segmentedSelected 变量改变时,函数 segmentedChanged 不会被调用。
public class ChooseViewModel: ObservableObject {
@Published var segmentedSelected = Int()
init() {
_ = $segmentedSelected
.debounce(for: .seconds(0.1), scheduler: DispatchQueue.main)
.sink(receiveValue: self.segmentedChanged(indexValue:))
}
func segmentedChanged(indexValue segIndex: Int) {
print(segIndex)
}
}
Run Code Online (Sandbox Code Playgroud)
Asp*_*eri 14
这可能是由于可取消的固定释放(只是一个假设)。尝试以下
var cancellables = Set<AnyCancellable>()
init() {
$segmentedSelected
.debounce(for: .seconds(0.1), scheduler: DispatchQueue.main)
.sink(receiveValue: self.segmentedChanged(indexValue:))
.store(in: &cancellables)
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1697 次 |
最近记录: |