Swift 可以使用 KVC 吗?

Is KVC possible with Swift?

我正在尝试在 Swift 中创建与以下 Objective-C 等效的内容。

[emitterLayer setValue:@ (scale) forKeyPath:@"emitterCells.cell.emitterCells.childCell.scale"];

我在 Swift 中尝试了以下方法:

emitterLayer.setValue (scale), forKey: "emitterCells.cell.emitterCells.childCell.scale")

但是,这不会像 objective-C

中那样更改值

这在 Swift 中是否有效,或者我是否需要重构它以不同的方式工作以实现相同的结果?

应该可以,但语法是

emitterKayer.setValue(scale, 
  forKeyPath:  "emitterCells.cell.emitterCells.childCell.scale")