我在viewController中使用了UISegmentedControl。如果选择了一个段,我希望从NSFetchedResultsController(已经设置)加载Table的数据,而我希望从数组加载数据。
我在这里使用段的委托方法
- (void)segmentedControl:(SVSegmentedControl*)segmentedControl didSelectIndex:(NSUInteger)index
这里的问题是我似乎无法使用段的委托来访问tableView数据源方法。
例如,如果在didSelectRowAtIndexPath方法中,我可以执行类似if(selectedSegment == 1),然后xxxxx的操作。
有谁知道我该怎么做?
我希望在根据细分受众群选择行时推送到不同的视图。
答案 0 :(得分:1)
假设您已将分段控件合成为属性,您当然可以从tableView数据源方法访问它。
例如,如果您的细分受众群被称为userSegment
,那么您只需
self.userSegment.selectedSegmentIndex
然后继续进行。例如if(self.userSegment.selectedSegmentIndex == 0) {...} else {...}
。您也可以使用此索引执行各种方法。查看文档。一个简单的例子:
NSString *selectedTitle = [self.userSegment titleForSegmentAtIndex:self.userSegment.selectedSegmentIndex];
这只是一个简单的例子,但关键是您可以轻松地使用段的状态来有条件地填充tableView数据源。
修改:有关selectedSegmentIndex
的更多信息以及您可以使用的其他属性和方法,请参阅UISegmentedControl Class Reference。