0

スワイプを使用して機能を削除しています

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

if (editingStyle == UITableViewCellEditingStyleDelete) {
    //add code here for when you hit delete
    NSLog(@"UITableViewCellEditingStyleDelete");
    [liste removeObjectAtIndex:indexPath.row];
    [self refreshTableView];
}
}

選択したセルで UImage を非表示にする必要があるため、このコードを使用しています

    - (void)tableView:(UITableView*)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath;{   
cellTodelete = (ListeRestoCell *) [self.tableView cellForRowAtIndexPath:indexPath];
if(cellTodelete.eventImage.hidden==NO) {
    a = 1 ;
    cellTodelete.eventImage.hidden = YES ;
}    
return;
}

これはうまく機能します。唯一の問題は、[削除] ボタンがクリックされていない場合でも Uimage が非表示になることです。そのため、[削除] ボタンがクリックされていない場合は、画像を再度表示する必要があります。これどうやってするの?

4

1 に答える 1

0

こうやって、

.h

BOOL isDeleted;
NSIndexPath *selIndexPath;

.m loadView

 isDeleted = NO;

/

 - (void)tableView:(UITableView*)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath;{   

 selIndexPath = indexPath;
cellTodelete = (ListeRestoCell *) [self.tableView cellForRowAtIndexPath:indexPath];
if(cellTodelete.eventImage.hidden==NO) {
    a = 1 ;
    cellTodelete.eventImage.hidden = YES ;
}    
return;
}

/

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

if (editingStyle == UITableViewCellEditingStyleDelete) {   

    isDeleted = YES;
    //add code here for when you hit delete
    NSLog(@"UITableViewCellEditingStyleDelete");
    [liste removeObjectAtIndex:indexPath.row];
    [self refreshTableView];
}
}

/

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{


      if(!isDeleted && selIndexPath!=nil) {

           cellTodelete = (ListeRestoCell *) [self.tableView cellForRowAtIndexPath:selIndexPath];
           cellTodelete.eventImage.hidden = NO ;
      }

}
于 2013-07-20T11:59:23.287 に答える