Tengo un tableview
, donde a veces puede que no haya resultados para listar, así que me gustaría poner algo que diga "sin resultados" si no hay resultados (¿una etiqueta o una celda de vista de tabla?).
¿Existe una forma más sencilla de hacer esto?
Intentaría una label
detrás y tableview
luego ocultaría una de las dos según los resultados, pero como estoy trabajando con una TableViewController
y no una normal, ViewController
no estoy seguro de qué tan inteligente o factible es.
También estoy usando Parse
y subclasificando como PFQueryTableViewController
:
@interface TableViewController : PFQueryTableViewController
Puedo proporcionar cualquier información adicional necesaria, ¡solo hágamelo saber!
TableViewController
Escena en Storyboard:
EDITAR: Por Midhun MP, aquí está el código que estoy usando
- (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;
}
Y aquí está la Vista que obtengo, todavía tiene líneas de separación. Tengo la sensación de que se trata de un pequeño cambio, pero no estoy seguro de por qué aparecen las líneas de separación.
numberOfSections
debería devolver un recuento y eso es todo. Lo mismo para numberOfRowsInSection
. Estos se pueden llamar muchas veces en cualquier momento. Nunca actualice las vistas ni actualice los datos ni haga nada excepto devolver un recuento. La lógica para actualizar las vistas nunca debe estar en estos métodos.