Ios6 initWithStyle UITableView的有条件使用

Ios6 initWithStyle UITableView的有条件使用,ios6,uitableview,segue,Ios6,Uitableview,Segue,我有一个UITableView类,可以加载各种数据。无论数据是什么,加载的数据上的所有操作都将是相同的,因此我认为最好将所有操作保持在同一个类中。我遇到的问题是,对于一组数据,我需要UITableView使用样式UITableViewStyleGrouped,其余的使用UITableViewStylePlain 通过使用以下if语句,我能够在prepareForSegue中实现这一点: if([whatToLoad isEqualToString:@"Sets"]){ [

我有一个UITableView类,可以加载各种数据。无论数据是什么,加载的数据上的所有操作都将是相同的,因此我认为最好将所有操作保持在同一个类中。我遇到的问题是,对于一组数据,我需要UITableView使用样式UITableViewStyleGrouped,其余的使用UITableViewStylePlain

通过使用以下if语句,我能够在prepareForSegue中实现这一点:

if([whatToLoad isEqualToString:@"Sets"]){
            [[segue destinationViewController] initWithStyle:UITableViewStyleGrouped];
        }
        else
            [[segue destinationViewController] initWithStyle:UITableViewStylePlain];

但是Xcode给了我一个关于它们两个的警告“表达式结果未使用”。在没有警告的情况下,我还能做些什么来达到同样的效果吗?或者我必须为需要分组表的一组数据创建不同的类吗?

在序列图像板文件中可以有多个表视图控制器,并为每个控制器将“类”设置为相同的
UITableViewController
子类。因此,您可以为它们中的每一个使用相同的控制器代码,但其中一个具有“分组”表视图,而其他具有“普通”表视图

召唤

[[segue destinationViewController] initWithStyle:...]

对我来说似乎有风险,因为目标视图控制器是一个已经分配和初始化的实例,
initXXX
函数通常可以返回不同的实例。

如果我创建第二个视图控制器,并将其类设置为相同的子类,我如何告诉它使用哪个视图控制器?@Nick:你不能像以前那样使用不同的分段吗?(我希望我正确理解了你的问题,这会有所帮助。)哇。我现在觉得很傻,因为我没有想到这一点。这正是我需要做的。我的印象是,如果我对多个视图控制器使用同一个类,那么我也必须使用同一个segue来访问它们。谢谢,这个很好用。