Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
根据Bool调用不同的方法,Swift中不使用if语句_Swift_Methods - Fatal编程技术网

根据Bool调用不同的方法,Swift中不使用if语句

根据Bool调用不同的方法,Swift中不使用if语句,swift,methods,Swift,Methods,是否可以根据Bool值调用一个或另一个方法?我希望这样做: var isLocked: Bool { didSet { // This is not Swift but indicates what I'm looking for. self.activityIndicator.(isLocked ? startAnimating() : stopAnimating()) } } 我希望使用现有的Swift 2(或3)语言功能来实现这一点

是否可以根据
Bool
值调用一个或另一个方法?我希望这样做:

var isLocked: Bool
{
    didSet
    {
        // This is not Swift but indicates what I'm looking for.
        self.activityIndicator.(isLocked ? startAnimating() : stopAnimating())
    }
}
我希望使用现有的Swift 2(或3)语言功能来实现这一点;没有类扩展

可能是重复的,但找不到。

怎么样:

didSet {
    isLocked ? self.activityIndicator.startAnimating() :
        self.activityIndicator.stopAnimating()
}
那么:

didSet {
    isLocked ? self.activityIndicator.startAnimating() :
        self.activityIndicator.stopAnimating()
}

的确斯威夫特扭曲了我的思绪,期待着一个别致的建筑:-)难道没有办法接近我所寻找的。是的。如果你真的想变得更有趣,你可以扩展
UIActivityIndicator
,并编写一个函数来接受bool并处理其中的三元(即
handleAnimatingState(shouldAnimate:bool)
)。但对我来说,这是过度工程化的。不,我正在寻找本地的Swift 2.3(或3.0)功能;我的原始代码是你能得到的最精简的。斯威夫特扭曲了我的思绪,期待着一个别致的建筑:-)难道没有办法接近我所寻找的。是的。如果你真的想变得更有趣,你可以扩展
UIActivityIndicator
,并编写一个函数来接受bool并处理其中的三元(即
handleAnimatingState(shouldAnimate:bool)
)。但对我来说,这是过度工程化的。不,我正在寻找本地的Swift 2.3(或3.0)功能;我的原始代码是您将得到的最精简的代码。