gpt4 book ai didi

objective-c - Objective-C 选择器参数的 Swift 默认值

转载 作者:行者123 更新时间:2023-11-30 11:59:56 26 4
gpt4 key购买 nike

我有以下 Objective-C 方法:

-(void)setPaneState:(MHPaneState)state withInitialVelocity:(CGPoint)velocity{
self.paneState = state;
[self animatePaneWithInitialVelocity:velocity];
}

目前,在同一应用程序的 Swift 代码中,我像这样调用此方法:

setPaneState(.closed, withInitialVelocity: .zero)

我希望第二个参数 (velocity) 具有默认值 CGPointZero。我知道 Objective-C 不支持语言级别的默认值,但 Swift 支持,所以我想在 Swift 中这样调用这个方法:

setPaneState(.closed)

如何才能完成定义一种仅采用一个 MHPaneState 参数的新方法的这一短任务?

最佳答案

你能在你的 Objective-C 类型上写一个 Swift 扩展并给它一个不同的名字吗?

extension MyObjCThing {
func mySetPaneState(_ state: MHPaneState, withInitialVelocity velocity: CGPoint = .zero) {
setPaneState(state, withInitialVelocity: velocity)
}
}

关于objective-c - Objective-C 选择器参数的 Swift 默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47372971/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com