【发布时间】:2016-02-11 12:56:06
【问题描述】:
在使用核心数据插入项目后,我正在尝试重新加载我的表视图控制器。我正在使用情节提要来展示我的模态视图控制器,并正在设置目标视图控制器的委托以准备继续,但我认为这是问题所在,因为我的 didAddCollection 方法没有被触发。我不确定我在这里缺少什么。我使用iOS TableView Reload after dismissing modal 作为当前代码的基础。
在我的 CCNewCollectionViewController.h 中
@protocol NewCollectionDelegate <NSObject>
-(void) didAddCollection;
@end
@interface CCNewCollectionViewController : UIViewController {
id delegate;
}
@property (nonatomic, retain) id <NewCollectionDelegate> delegate;
在我的 CCNewCollectionViewController.m 中
@implementation CCNewCollectionViewController
@synthesize delegate;
// save data
[self.delegate didAddCollection];
// dismiss view controller
在我的 CollectionTableViewController.m 中
@interface CollectionTableViewController () <NSFetchedResultsControllerDelegate, NewCollectionDelegate>
-(void) didAddCollection {
[self.tableView reloadData];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
[[segue destinationViewController] setDelegate:self];
}
【问题讨论】:
-
我无法理解@interface CCNewCollectionViewController : UIViewController { id delegate; }.
-
CCNewCollectionViewController 是我以模态方式呈现的视图。您特别难以理解什么?
-
为什么你有一个属性和一个成员变量都命名为“delegate”?
-
按照我在我的问题中提出的链接,创建委托实例然后定义它。但我也一直在修补它。我删除了 { id delegate } 并没有任何改变。
标签: ios objective-c core-data