gpt4 book ai didi

swift - 如何缩短关闭时间?

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

如何让闭包变得更短?我想知道闭包的简单编程。

let closures = { (fillBefore: Bool, fillAfter: Bool) -> String in

if fillBefore && fillAfter {
return kCAFillModeBoth
} else if !fillBefore && fillAfter {
return kCAFillModeBackwards
} else if fillBefore && !fillAfter {
return kCAFillModeForwards
} else {
return kCAFillModeRemoved
}

}

anim?.fillMode = closures((item?.fillBefore)!, (item?.fillAfter)!)

如何缩短闭包时间?

最佳答案

根据您的情况,我认为在某些时候您必须评估两个 bool 值,因此我假设没有“更短”的代码来处理它。

但是,您可能正在寻找一种“更简洁”的方法,因此我建议将它们评估为 bool 值(元组)对,并使用 switch 语句:

let closure = { (fillBefore: Bool, fillAfter: Bool) -> String in
switch (fillBefore, fillAfter) {
case (true, true):
return kCAFillModeBoth
case (false, true):
return kCAFillModeBackwards
case (true, false):
return kCAFillModeForwards
default: // on your case, it would be the same as (false, false)
return kCAFillModeRemoved
}
}

let myClosure = closure(false,false)
myClosure // removed

关于swift - 如何缩短关闭时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50963271/

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