4

テーブルビューカスタムセルに更新したい。検索時にテーブルセルを更新したい。私はreloadRowsAtIndexPathsメソッドを使用します。このメソッドは機能しますが、セルを更新しませんでした。手伝ってくれませんか

以下のメソッドは、検索したときに実行されます

-(void)doSearchHotelName:(id)sender{

    NSIndexPath *tmpIndexpath=[NSIndexPath indexPathForRow:1 inSection:0];

    [self.tableV beginUpdates];
    [self.tableV reloadRowsAtIndexPaths:[NSArray arrayWithObjects:tmpIndexpath, nil] withRowAnimation:UITableViewRowAnimationFade];
    [self.tableV endUpdates];

}

以下のメソッドテーブルメソッド

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *simpleTableIdentifier = @"Hotel_FilterSearchCell";

    Hotel_FilterSearchCell_iPad *cell = (Hotel_FilterSearchCell_iPad *)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];




    if (cell == nil) 
    {
        NSArray *nib ;

        nib = [[NSBundle mainBundle] loadNibNamed:@"Hotel_FilterSearchCell_iPad" owner:self options:nil];

        cell = [nib objectAtIndex:0];
    }

    else if ([indexPath row]==1) {


        if([SharedAppDelegate.filter_selected_hotels_list count]==[SharedAppDelegate.filter_hotels_list count])

            [cell.cellExtraInfo setText:@"All(H)"];

        else if ([SharedAppDelegate.filter_selected_hotels_list count]!=[SharedAppDelegate.filter_hotels_list count])  

            [cell.cellExtraInfo setText:[NSString stringWithFormat:@"%i %@",[SharedAppDelegate.filter_selected_hotels_list count],@"Selected(H)"]];

    }

    cell.selectionStyle = UITableViewCellSelectionStyleNone;

    return cell;
}
4

3 に答える 3

7
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationAutomatic];
于 2012-09-21T08:33:32.503 に答える
1

に変更UITableViewRowAnimationFadeUITableViewRowAnimationNoneてみて、それが役立つかどうか教えてください。

ストーリーボードで静的な UITableView を使用しているため、同じことをしなければなりませんでした。アニメーションは古いセルをビューの外に移動し、新しいセルに置き換えます。古いセルと新しいセルは同じオブジェクトであるため、これは基本的にテーブルからセルを削除します(私の仮定)。

于 2012-12-19T23:14:26.940 に答える
0

UITableViewのドキュメントから:

beginUpdates
レシーバーの行およびセクションを挿入、削除、または選択する一連のメソッド呼び出しを開始します。

行またはセクションを挿入、削除、または選択する場合以外は、この方法を使用しないでください。

于 2012-09-21T08:25:15.950 に答える