2012-09-23 42 views
6

al intentar crear una tabla basada vista que sigue llamando a la función objectValueForTableColumn en lugar de la viewForTableColumn.viewForTableColumn no se ejecuta (pero objectValueForTableColumn es)

He configurado la vista de tabla como "basada en la vista" en su configuración. Pero todavía no puedo hacer que llame a la función correcta. He observado la implementación del ejemplo de manzanas (tableviewplayground) y en algunos puntos incluso copiamos pegados el IB y las funciones, todavía no hay progreso.

El código relevante:

// Should run 
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row 
{  
    return nil; 
} 

// Gets run 
-(id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row 
{ 
    return nil; 
} 

dos imágenes, no está seguro de lo útiles que son, pero todavía. http://imgur.com/a/ix34Q

Respuesta

16

Algunas cosas a comprobar:

  • ¿Su NSTableView tener su conjunto delegate a la clase que implementa el protocolo NSTableViewDelegate? (Lo pregunto porque tableView:viewForTableColumn:row: es un método delegado mientras que el tableView:objectValueForTableColumn:row: es un método fuente de datos.)

  • ¿Hay enlaces que se establecen en el IB? (Usted menciona que copió la punta de un proyecto existente.) Compruebe sobre todo para los enlaces al contenido NSTableView de unión y para subvistas de la vista prevista (por lo general el campo de texto.)

  • Cómo se implementa el método numberOfRowsInTableView: desde el protocolo NSTableViewDataSource y devuelve un entero distinto de cero ?

Por último, es posible que tenga una mirada en el capítulo Tabla Guía de Programación Ver en "Vistas tabla basada en Ver Poblando mediante programación" en la documentación.

+2

De hecho, se suponía que estaba vinculado como un delegado. ¡Muchas gracias! –

+0

Sin duda, es un placer. – FluffulousChimp

+0

El primer punto fue mi problema. Es un poco confuso que estos métodos pertenecen a diferentes métodos (protocolo | fuente de datos) ¡Gracias! –

Cuestiones relacionadas