2

カスタムセルを使用していますUITableViewUIButton、現在のセルをテーブルビューから削除する必要があります。私cellForRowAtIndexPathがやっている

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellIdentifier = @"CellIdentifier";
    NSLog(@"Creating Cell");

    FADynamicCell *cell= (FADynamicCell *)[tableView dequeueReusableCellWithIdentifier:cellIdentifier];

    if (cell == nil)
    {
        cell = [[[NSBundle mainBundle]loadNibNamed:NSStringFromClass([FADynamicCell class])
                                             owner:nil
                                           options:nil] lastObject];
    }

    currentIndexPath = indexPath;

    UIButton *removeButton = [UIButton buttonWithType:UIButtonTypeCustom];
    removeButton.tag = indexPath.row +100;
    removeButton.frame =  cell.removeButton.frame;
    removeButton.backgroundColor = [UIColor colorWithRed:255./255 green:65./255 blue: 21./255 alpha:1];
    removeButton.titleLabel.font = [UIFont systemFontOfSize:12];
    removeButton.titleLabel.textAlignment = NSTextAlignmentCenter;
    [removeButton setTitle:@"Remove" forState:UIControlStateNormal];
    [removeButton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
    [removeButton addTarget:self action:@selector(removing) forControlEvents:UIControlEventTouchUpInside];
    [cell addSubview:removeButton];

    return cell;
}

そして、削除するための関数で

-(void) removing
{
    [TOperations deleteTickerFromGroup:tickerGroupID andTickerSymbol:selectedSymbol];

    NSNumber *selectedRowIndex1 = [NSNumber numberWithInteger:currentIndexPath.row];
    [tableView1 beginUpdates];
    NSIndexPath *previousPath = [NSIndexPath indexPathForRow:selectedRowIndex1.integerValue-1 inSection:0];
    [tableView1 endUpdates];
    [tableView1 reloadData];

}

問題は、正しいセルにアニメーションが表示されていることですが、テーブル ビューからカスタム セルを削除できません。そして、ビューを再度ロードするたびに、つまり他の画面から来ると、削除するためにクリックしたセルが表示されません。

どんな助けでも大歓迎です...

4

1 に答える 1