Mostrar label si la vista de tabla está vacía

Estoy usando Core Data para almacenar un nombre de proyecto y mostrarlo en una vista de tabla. Cuando la vista de tabla está vacía (no hay datos en la database) está en blanco. Desde la perspectiva del usuario, esto no es genial, así que quiero poder mostrar una label que diga "Sin proyectos".

¿Cómo haría esto? Necesito:

  1. Verifique que la database esté vacía y establezca un BOOL
  2. si este BOOL se establece en verdadero o SÍ, ¿muestra una label? o establezca cell.textLabel.text como "Sin proyectos"

Si estoy en las pistas correctas, realmente apreciaría algún código de ejemplo para darme un empujón en la dirección correcta.

Gracias

Terminé usando el siguiente código para comprobar si mi database Core Data está vacía. Funciona shinymente Esto debe ir en el file CoreDataController.m.

NSLog(@"Total number of rows = %d ", totalNumberOfRowsInDatabase); if (totalNumberOfRowsInDatabase == 0) { NSLog(@"Database is empty"); UIImage *image = [UIImage imageNamed:@"emptyTable.png"]; UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; [imageView setFrame:self.tableView.bounds]; [self.tableView setBackgroundView:imageView]; self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone; [self.tableView setBackgroundColor:[UIColor clearColor]]; } else { [self.tableView setBackgroundView:nil]; self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine; [self.tableView setBackgroundColor:[UIColor whiteColor]]; } return [[[self.fetchedResultsController sections] objectAtIndex:section] numberOfObjects]; 
 -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { if (section == mySection) return MAX(dataCount, 1); else // yadda } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { // yadda if ([indexPath section] == mySection) { if (dataCount == 0) return mySpecialCell; } // yadda } 

Hay una lib conveniente para eso: UITableView-NXEmptyView

Tan fácil como:

 tableView.nxEV_emptyView = yourView 

UPD: hay algo más flexible y una solución actualizada .