2016-03-08 91 views
0

我有一个产品页面,显示产品和筛选页面。在过滤器页面有一个按钮,根据情况它有两个条件。根据过滤器,我显示来自数据库的不同产品。Segue在快速重新加载视图

我有一个问题。如果用户转到筛选屏幕并选择任何内容,我应该返回相同的页面,然后再次不加载我的视图。

如果从过滤器视图中选择了任何东西,则此segue应重新加载我的产品屏幕并使用选定的过滤器获取正确的数据。

如何设置此按钮以使用2种不同类型?

+0

是你的产品和过滤器在不同的视图? – Lee

+0

是的,他们是不同的意见。 – berkt

+0

你有没有试过NSNotificationCenter? – Lee

回答

0

你应该定义你自己的协议让我们命名它FilterSelector

protocol FilterSelector{ 
    func selectFilter(filter: String) 
} 

然后在FiltersViewController其中用户将选择一个过滤器,你应该定义一个delegate让我们命名它filterSelectorDelegate

var filterSelectorDelegate: FilterSelector! 

然后在产品页面,你会实现FilterSelector协议这样

extension ProductsViewController: FilterSelector{ 
    func selectFilter(filter: String){ 
     //Dismiss the filtersViewController 
     //and do what you want with the selected filter 
    } 
} 

最后在产品页面中,您应该设置filterDelegate,当您将显示过滤器pa GE。在过滤器页面中,当用户选择一个过滤器时,您将调用filterSelectorDelegate.selectFilter("selectedFilter")