2017-01-19 5 views
0

私はこのアイテムを得るのに "より良い"方法があると知っていますが、私はまだSwiftの関数型プログラミングの文法では十分ではありません。Swiftの関数型プログラミングシンタックス

私は物事のコレクションを持っています、それらはそれぞれプロパティを持っています、そのプロパティで1のタグを持つものを探したいと思います。

「タブバーの項目に1のタグが付いたビューコントローラーを私に教えてください」というよりクリーンな方法はありますか?

+4

特に[一番下の答えを参照してください(http://stackoverflow.com/a/41637242/2976878)(ここ) '最初に使用します'。あなたのループ(私は間違っていると思われます)は実際に条件を満たす最後の要素を取得します(意図的な場合は、これを達成するために 'reversed() 'を使用できます)。 – Hamish

+0

@ハミッシュありがとう。私は、正解が1つしかなく、リストが不足していることがわかっていると仮定して不足を認めていました。 – bshirley

答えて

1

1つのライナーである:

let homeController: UIViewController? = tabBarController?.viewControllers?.first(where: ({$0.tabBarItem.tag == 1})) 
+0

これはまさに私が探していたものでしたが、見つけられませんでした。ありがとう。私は辞書の正しいスペルを調べようとしていたような気がした。 – bshirley

関連する問題