J'ai un tableview, où parfois il n'y a pas de résultats à lister, donc je voudrais mettre quelque chose qui dit "pas de résultats" s'il n'y a pas de résultats (soit une étiquette ou une cellule de vue de tableau?).
Existe-t-il un moyen le plus simple de le faire?
J'essaierais un labelderrière tableviewpuis cacherais l'un des deux en fonction des résultats, mais comme je travaille avec un TableViewControlleret pas un normal, ViewControllerje ne sais pas à quel point c'est intelligent ou faisable.
J'utilise également Parseet je sous-classe en tant que PFQueryTableViewController:
@interface TableViewController : PFQueryTableViewController
Je peux fournir tous les détails supplémentaires nécessaires, faites le moi savoir!
TableViewController Scène dans Storyboard:

EDIT: Par Midhun MP, voici le code que j'utilise
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
NSInteger numOfSections = 0;
if ([self.stringArray count] > 0)
{
self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
numOfSections = 1;
//yourTableView.backgroundView = nil;
self.tableView.backgroundView = nil;
}
else
{
UILabel *noDataLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, self.tableView.bounds.size.width, self.tableView.bounds.size.height)];
noDataLabel.text = @"No data available";
noDataLabel.textColor = [UIColor blackColor];
noDataLabel.textAlignment = NSTextAlignmentCenter;
//yourTableView.backgroundView = noDataLabel;
//yourTableView.separatorStyle = UITableViewCellSeparatorStyleNone;
self.tableView.backgroundView = noDataLabel;
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
}
return numOfSections;
}
Et voici la vue que j'obtiens, elle a toujours des lignes de séparation. J'ai le sentiment qu'il s'agit d'un petit changement, mais je ne sais pas pourquoi des lignes de séparation apparaissent?

numberOfSectionsdevrait retourner un compte et c'est tout. Pareil pour numberOfRowsInSection. Ceux-ci peuvent être appelés plusieurs fois à tout moment. Ne mettez jamais à jour les vues, ne mettez jamais à jour les données et ne faites rien d'autre que renvoyer un décompte La logique de mise à jour des vues ne doit jamais être dans ces méthodes.





