Я использую выпадающее меню, помогающее фильтровать массив и затем помещать данные из массива обратно в collectionView, но, когда я пытаюсь попытаться запустить функцию, которая должна отсортировать и перезагрузить collectionView, экран становится пустым.
Я попытался установить базовую линию, а затем отфильтровать массив.
extension RestaurantDetails: menuViewDelegate {
func didChangeMealSize(mealSizeText: String) {
self.mealSize = mealSizeText
print("Usage", self.mealSize)
}
func didChangeDrink(drinkName: String) {
self.drink = drinkName
print("drink", self.drink)
}
func didChangeProductType(productType: String) {
self.productFilter = productType
print("Filter", self.productFilter)
}
func didchangeSwitch(FriesSwitch: UISwitch) {
if FriesSwitch.isOn == true {
self.FriesOnly = true
print("FRIES Only")
} else {
self.FriesOnly = false
print("Drink & FRIES")
}
func didendSelection(button: UIButton) {
print("ran Here")
if (SegmentType == "All" && FriesSwitch == false && mealSize == RestaurantDetails.allProductIdentifier && productFilter == RestaurantDetails.allProductIdentifier && price == 0.0) {
filteredProducts = products
} else {
filteredProducts = products.filter { ($0.usage?.lowercased() ?? "") == bestFor}
}
productCollection.reloadData()
}
Я хочу отфильтровать по выбранному: Размер еды, Пить, и с или без картофеля фри.Когда didendSelection запущен, все свойства выбранных переменных печатаются, но collectionView возвращается пустым.