0

如果我的 tableView 没有可显示的内容,我需要提醒用户有 0 个结果。我在 willDisplayCell 方法中执行此操作,但如果有 0 个结果,它不会注册。有谁知道如何修改这个?谢谢!

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell 
forRowAtIndexPath:(NSIndexPath *)indexPath {

if([indexPath row] == ((NSIndexPath*)[[tableView indexPathsForVisibleRows] 
lastObject]).row) {

    if ([self.listItems count] == 0) {

        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"No Results" message:@"No 
        results found" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [alert show];
    }
}
}
4

1 回答 1

2

viewWillAppear您可以在您的方法中显示警报您的willDisplayCell方法未调用,因为您的行数为 0,如果您仔细查看您的willDisplayCell方法,您会发现一个参数forRowAtIndexPath,这就是为什么它没有被调用,因为行数为零。

-(void)viewWillAppear:(BOOL)animated
 {

    if ([self.listItems count] == 0)
    {
       UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"No Results" message:@"No 
       results found" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
       [alert show];
    }
    else
    {
       [tableView reloadData];
    }
     [super viewWillAppear:animated];
 }
于 2013-03-05T07:42:36.163 回答