在不同的表视图控制器之间传递对模型的引用

时间:2012-10-28 20:32:09

标签: ios

我正在学习iOS。我有一个表视图控制器,它将booksdatacontext对象(存储书籍对象)作为其数据源。我想显示一份报告按价格将这些书籍排序为第二个表格视图。如何在第二个表视图中引用模型(即数据控制器对象作为数据源)?现在,我正在尝试在第一个视图中为第二个视图的dataController分配为segue方法做准备 - 但是在下面得到错误。

if ([[segue identifier] isEqualToString:@"priceReport"]) {
    priceReportViewController  *priceController = [segue destinationViewController];
    priceController.dataController = self.dataController; //throws -[UINavigationController setDataController:]: unrecognized selector sent to instance 

}

我在priceReportViewController的.h文件中声明了一个datacontroller属性

#import <UIKit/UIKit.h>
#import "booksDataController.h"

@class Book;

@interface priceReportViewController : UITableViewController
@property (strong, nonatomic) booksDataController *dataController;
@end

1 个答案:

答案 0 :(得分:0)

您的segue的目的地是UINavigationController。访问它的根视图控制器属性以获取价格列表视图控制器,然后设置该

的dataController属性

编辑: 或者,您可以(就像您一样)将您的segue链接到故事板中的实际视图控制器,而不是嵌入它们的导航控制器。