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

行数が 0 であるため、メソッドにアラートを表示できますviewWillAppear。メソッドwillDisplayCellをよく見ると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 に答える