Ios UITableView,不包含任何条目
我有个问题。在我的应用程序中,我有一个带有列表的TableView,当我删除TableView上显示的最后一条记录时,我希望“不再有数据”。谢谢 如果删除了最后一条记录,您可以签入条件并添加页眉或页脚Ios UITableView,不包含任何条目,ios,uitableview,Ios,Uitableview,我有个问题。在我的应用程序中,我有一个带有列表的TableView,当我删除TableView上显示的最后一条记录时,我希望“不再有数据”。谢谢 如果删除了最后一条记录,您可以签入条件并添加页眉或页脚 使用此方法,并创建页眉或页脚视图以不显示更多数据您可以使用页眉或页脚进行此操作,例如: - (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section { if ([ta
使用此方法,并创建页眉或页脚视图以不显示更多数据您可以使用页眉或页脚进行此操作,例如:
- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section {
if ([tableView numberOfRowsInSection:section] == 0) {
return @"No more data";
}
return nil;
}
如果您不喜欢,请创建一个标签,将其添加到视图中,并根据行数显示/隐藏它。您可以使用原始数据数组计数轻松完成此操作,如下所示
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if(arrData.count == 0 )
return 1;
return arrData.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
if(arrData.count == 0){
cell.titleLabel.text=@"No Data";
}else{
//Your normal configurations
}
return cell;
}
当您从数据数组中删除所有数据时,它将为空;当您在上次删除数据后重新加载tableView时,if将返回一个单元格,可以显示为无数据
行
希望这有帮助
干杯。添加标签(使用您的
label.hidden=YES
将其最初隐藏在viewdidload中)。删除最后一条记录时,请使用yourTable.hidden=YES
隐藏您的表格,并使用your label.hidden=NO
显示标签。不过,下面给出了更好的答案。谢谢Jenny,它工作得很好。。。从所有的答案来看,只有你的答案是有效的。。。。感谢所有帮助我的人!!!
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
if(self.searchUserResultList count==0))
{
// Display a message when the table is empty
UILabel *messageLabel = [[UILabel alloc] initWithFrame:CGRectMake(self.view.center.x-15, self.view.frame.size.height/2 , self.view.bounds.size.width, self.view.bounds.size.height)];
messageLabel.autoresizingMask=UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
messageLabel.text = @"NO SEARCH RESULTS" ;
messageLabel.textColor = [UIColor whiteColor];
messageLabel.numberOfLines = 0;
messageLabel.textAlignment = NSTextAlignmentCenter;
messageLabel.font = [UIFont fontWithName:@"Palatino-Italic" size:23];
[messageLabel sizeToFit];
messageLabel.tag = 222;
messageLabel.frame = CGRectMake(self.view.center.x-(messageLabel.frame.size.width/2), self.view.frame.size.height/2, messageLabel.frame.size.width, messageLabel.frame.size.height);
[self.view addSubview:messageLabel];
self.tableView.hidden = YES;
return 0;
}
for (UIView* b in self.view.subviews)
{
if(b.tag == 222)
{
[b removeFromSuperview];
}
}
self.tableView.hidden = NO;
return 1;
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
if(self.searchUserResultList count==0))
{
// Display a message when the table is empty
UILabel *messageLabel = [[UILabel alloc] initWithFrame:CGRectMake(self.view.center.x-15, self.view.frame.size.height/2 , self.view.bounds.size.width, self.view.bounds.size.height)];
messageLabel.autoresizingMask=UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
messageLabel.text = @"NO SEARCH RESULTS" ;
messageLabel.textColor = [UIColor whiteColor];
messageLabel.numberOfLines = 0;
messageLabel.textAlignment = NSTextAlignmentCenter;
messageLabel.font = [UIFont fontWithName:@"Palatino-Italic" size:23];
[messageLabel sizeToFit];
messageLabel.tag = 222;
messageLabel.frame = CGRectMake(self.view.center.x-(messageLabel.frame.size.width/2), self.view.frame.size.height/2, messageLabel.frame.size.width, messageLabel.frame.size.height);
[self.view addSubview:messageLabel];
self.tableView.hidden = YES;
return 0;
}
for (UIView* b in self.view.subviews)
{
if(b.tag == 222)
{
[b removeFromSuperview];
}
}
self.tableView.hidden = NO;
return 1;
}