【发布时间】:2017-01-19 21:07:00
【问题描述】:
我知道有一种“更好”的方法可以得到我想要的这个项目,但我对 Swift 的函数式编程语法还不够熟练。
我有一组东西,它们每个都有一个属性,我想在该属性上找到带有1 标签的那个。
var homeController : UIViewController?
for vc in (tabBarController?.viewControllers)! {
if vc.tabBarItem.tag == 1 {
homeController = vc
}
}
你有什么更简洁的方法来“给我标签栏项目标记为 1 的视图控制器”?
【问题讨论】:
-
尤其是very bottom answer使用
first(where:)。虽然请注意,您的循环(我怀疑是无意的)实际上获取了满足条件的最后一个元素(如果有意,您可以使用reversed()来实现这一点)。 -
@Hamish 谢谢。我允许不充分,假设只有一个正确答案并且知道列表很短。
标签: swift functional-programming