BrowseViewController
加載BrowseResultsTableViewController
作爲subView
。在這種subview
,是下面的代碼塊:將refreshControl添加到TableViewController的子視圖時的EXC_BAD_ACCESS
- (void)viewDidLoad
{
[super viewDidLoad];
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self action:@selector(refreshResults:) forControlEvents:UIControlEventValueChanged];
[self.tableView addSubview:refreshControl];
}
- (void)refreshResults:(UIRefreshControl *)sender
{
NSLog(@"REFRESH");
//[self performSelector:@selector(updateTable) withObject:nil afterDelay:1];
}
引發錯誤
如果我清理項目和rebulid,我得到這個錯誤:
2013-03-25 23:59:06.256 rockit[40772:c07] -[UIViewControllerWrapperView refreshResults:]: unrecognized selector sent to instance 0x7516fe0 2013-03-25 23:59:06.257 rockit[40772:c07] - Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewControllerWrapperView refreshResults:]: unrecognized selector sent to instance 0x7516fe0'
爲什麼不能它找到了方法?
範圍可能是一個問題,增加實例的範圍或者你使用自動引用計數器移至實例級別 – Spynet 2013-03-26 08:35:02
?如果不是,那麼init需要一個「保留」。 – Gossamer 2013-03-26 08:41:22