“无法编译连接:”错误是什么意思?

我从Xcode收到以下错误:

Couldn't compile connection: <IBCocoaTouchOutletConnection:0x401538380 <IBProxyObject: 0x40154a260> => categoryPicker => <IBUIPickerView: 0x4016de1e0>> 

我已经缩小到故事板的一个sockets连接。 我的代码(大约30个有很多其他连接的视图)编译并运行正常,直到我从UIPicker添加到视图的categoryPicker属性的连接。 select器本身也工作正常,我只是不能重新加载它没有得到这个连接工作:

 @interface FiltersTableViewController : UITableViewController <UIPickerViewDataSource, UIPickerViewDelegate> { NSFetchedResultsController *fetchedResultsController; FilterTableViewController *filterView; AppDelegate *appDelegate; NSManagedObjectContext *managedObjectContext; } @property (nonatomic, strong) FilterTableViewController *filterView; @property (nonatomic, strong) NSFetchedResultsController *fetchedResultsController; @property (nonatomic, strong) NSManagedObjectContext *managedObjectContext; @property (nonatomic, weak) IBOutlet UIPickerView *categoryPicker; - (void)configureCell:(FilterTableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath; - (void)performFetch; @end 

UIPickerView在UITableViewCell中。 这里是故事板的图像,从“categoryPicker”到“FiltersTableViewController”的连接导致错误: 在这里输入图像说明

感谢您的任何想法,或如何debugging的build议!

编辑:我删除了连接,并添加一行到numberOfComponentsInPickerView:

 - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView { categoryPicker = pickerView; return 1; 

}

这现在工作!,但我想了解为什么连接将无法正常工作,这是什么错误消息的意思。 现在,这似乎对我来说是一个混乱,因为我用其他地方的IB连接来获取对象引用。

编辑2:连接原型单元格会产生此错误:非法configuration:连接“单元格”不能有一个原型对象作为其目标。 不知道这是Xcode 4.5中的新function。

问题是这是一个原型单元格。 在它里面放置一些东西是没有意义的,因为它不是一个真正的单元,它可能是几十个或几百个单元的模型,在这种情况下,哪个单元可以指向哪个单元呢?

SWIFT 2

我正在创build一个popover ,我得到了同样的错误。

我所做的就是按照@ matt的回答, 不要把它放在一个单元格上 ,现在这是合乎逻辑的解释!

相反,我把TableView作为锚点 ,它工作正常。

希望对未来有所帮助。