0

在此处输入图像描述

我正在使用分组表视图来开发使用数据库的联系人列表。当列表中没有联系人时,我必须在 tableview 上显示消息“没有联系人”。我该怎么做?

分享你的想法..

提前致谢

4

3 回答 3

2

假设您使用数组来存储所有联系人,然后使用以下委托

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
   { 
   // You can also modify this condition according to a specific section

   if([YOUR_ARRAY count] == 0)
    {
    return 1;
    }
   else  
   return [YOUR_ARRAY count];
 }

现在在以下委托中将数据添加到表中

-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

  // Initialise your cell

 if([YOUR_ARRAY count] > 0){

  // add your array data to cells

  }

  if([YOUR_ARRAY count] == 0){

   // this means no contacts in array and therfore you have only one cell to display NO CONTACTS

   }

   return cell;

}
于 2012-06-19T12:44:18.893 回答
0

对于这种情况,我们使用表头。

如果表格在他的数据源中有元素,则表格标题清晰且高度为 1px。如果数据源没有元素,则表头视图设置为与表的框架一样大,并包含消息、图像或您可能需要的任何内容。

我们使用的函数(实际上是表视图委托方法)是section 中 header 的 height 和 sectionheader 的 view。我们在 viewForHeader 函数中验证了数据源

您也可以使用表格页脚实现相同的效果

于 2012-06-19T12:44:46.613 回答
0

你可以添加 UILabel 并设置标签的文本

label.text = @"No results ";

你做一个测试

if ([contacts count] == 0)
{
     yourTableview.hidden = YES;
      yourLabel.hidden = NO;
}
else
{
      yourTableview.hidden = NO;
      yourLabel.hidden = YES;
}`
于 2012-06-19T12:46:03.040 回答