如何在swift中的UICollectionView中过滤单个类别?

时间:2018-05-23 09:10:53

标签: ios swift uicollectionview filtering

我是swift的新手,当我尝试过滤UICollectionView中的某些类别时,我遇到了一些问题。

这里我的代码可以获取所有类别的所有文章。

    func getArticlesforCategory(category: String) -> Int {
    var result : Int = 0
    for article in self.allArticles {
        if category == article.category {
            result += 1
        }
    }
    return result
    }

如何只过滤一个类别,例如“test”?

通过从wordpress网站解析xml来获取所有类别

3 个答案:

答案 0 :(得分:2)

您可以使用filter功能过滤您的数组:

func getArticlesforCategory(category: String) -> Int {
    let filteredArray = allArticles.filter( {$0.category == category }) // Here you have filtered array
    return filteredArray.count // If you want number of items pass count of filtered array
}

答案 1 :(得分:1)

尝试以下行:

let result = self.allArticles.filter { $0.category == "test" }.count

答案 2 :(得分:0)

您可以使用filter,尝试此代码

func getFilteredArray(category: String) -> [ array of your objects] {
    let filteredArray = allArticles.filter( {$0.category == category })
    return filteredArray
}