Estoy recibiendo el siguiente error de Xcode:¿Qué significa el error "No se pudo compilar la conexión:"?
Couldn't compile connection: <IBCocoaTouchOutletConnection:0x401538380
<IBProxyObject: 0x40154a260> => categoryPicker => <IBUIPickerView: 0x4016de1e0>>
He reducido esto a una sola conexión de salida en el guión gráfico. Mi código (cerca de 30 vistas con muchas otras conexiones) se compila y funciona bien hasta que agregue una conexión de un UIPicker a la propiedad de la categoría de la vista de la vista. El selector en sí también funciona bien, simplemente no puede volver a cargarlo sin conseguir esta conexión funcione:
@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
la UIPickerView está en una UITableViewCell. Aquí está una imagen del guión gráfico, la conexión desde "categoryPicker" a "FiltersTableViewController" provoca el error:
Gracias por cualquier idea o sugerencia sobre cómo depurar él!
EDIT: que eliminan la conexión y añade una línea a numberOfComponentsInPickerView:
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
categoryPicker = pickerView;
return 1;
}
Esto funciona ahora !, pero me gustaría entender por qué la conexión no funcionará y lo que significa ese mensaje de error En este momento, esto me parece un desafío, ya que uso conexiones IB en cualquier otro lugar para obtener referencias de objetos.
EDITAR 2: La conexión de un prototipo de celda genera este error: Configuración no válida: Conexión "Celda" no puede tener un objeto prototipo como su destino. No estoy seguro si esto es nuevo en Xcode 4.5.
Parece que el problema es que categoryPicker es "débil" y FilterTableViewController es "fuerte". Trate de hacer que categoryPicker sea fuerte también y verifique si eso funciona – doNotCheckMyBlog
Gracias. Lo intenté, pero no cambia nada. (Tengo la impresión de que IBOutlets debería ser débil ... Lo entiendo aquí: http://www.raywenderlich.com/5773/beginning-arc-in-ios-5-tutorial-part-2). – Symmetric
Sí, eso es técnicamente correcto, lo siento mal! ¡Como acabo de leer eso en la documentación de Apple también! – doNotCheckMyBlog