繁体   English   中英

使用Shark Food Mute Switch快速关闭语法吗?

[英]Swift closure syntax using Shark Food Mute Switch?

我在使用快速关闭语法时遇到麻烦。 我正在尝试使用Sharkfood检查静音开关,您可以在此处查看: http ://sharkfood.com/content/Developers/content/Sound%20Switch/

我正在尝试调用的块如下所示。

typedef void(^SharkfoodMuteSwitchDetectorBlock)(BOOL silent);

这就是我试图称之为的方式,但是它没有用。 我已经尝试了很多不同的方法,而且我知道自从我快速接触以来就缺少了一些东西。 我得到的错误是:

'(Bool)-> Void'不能转换为'Bool'

在此代码的第一行:

muteDetector.silentNotify({
    (silent: Bool) -> Void in
    println("this")
    println("worked")
})

任何帮助将不胜感激。

从未使用过该库,但是在查看问题中链接的文档时,我注意到silentNotify是一个属性:

@property (nonatomic,copy) SharkfoodMuteSwitchDetectorBlock silentNotify;

包含该代码块,因此表明需要BOOL的错误是有道理的。

而是使用您的代码,您可能正在尝试调用此方法:

-(void)setSilentNotify:(SharkfoodMuteSwitchDetectorBlock)silentNotify{
    _silentNotify = [silentNotify copy];
    self.forceEmit = YES;
}

我不知道您要尝试使用哪两个方法-如果您要调用该块,则只需要提供一个布尔值即可:

muteDetector.silentNotify(true)

相反,如果您想注册一个新块(关闭),则必须使用:

muteDetector.setSilentNotify({
    (silent: Bool) -> Void in
    println("this")
    println("worked")
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM