gpt4 book ai didi

ios - Swift 2 - 在 Obj-C 中使用时的完成 block 语法

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

我有这个 Swift block :

var onLoggedIn: ((sender:AnyObject?, showFTUE:Bool) -> ())?

尝试在 Obj-C 中使用它,XCode 7 自动完成为:

 [loginController setOnLoggedIn:^(id _Nullable, BOOL) {
<#code#>
}];

但随后抛出错误并告诉我参数名称被省略。我尝试在各种位置插入参数 showFTUE 但没有成功。

在我的 Swift 翻译文件中,它被翻译为:



最佳答案

从 Xcode 7 开始,当您在 .h 中声明的完成 block (在 obj-c 中)没有名称(这是 Xcode 7 的默认自动完成行为)时,它也会在没有参数名称的情况下自动完成。如您所见,您的 block 只有类型和 _Nullable 指令,只需在末尾添加参数名称即可。

[loginController setOnLoggedIn:^(id _Nullable parameterName1, BOOL parameterName1) {
<#code#>
}];

关于ios - Swift 2 - 在 Obj-C 中使用时的完成 block 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33309713/

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