2012-07-05 5 views
0

내 코드에서 UITableView에서 셀을 선택하려고합니다. 여기에서 선택을 수행하지만 선택 될 때마다 잠시 동안 만 선택되고 선택을 잃게됩니다.iOS uitableview 셀이 잠시 동안 만 선택됩니다.

내가 뭘 잘못 했니?

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"SimpleTableIdentifier"]; 

    if (cell == nil) 
    { 
     cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"SimpleTableIdentifier"]; 
    } 

    cell.textLabel.text = [[self tableViewArray] objectAtIndex:indexPath.row]; 

    if(indexPath.row == self.selectedTopicIndex) 
    { 
     NSLog(@"DIE DIE DIE DIE DIE!!!"); 
     [cell setSelected:YES]; 
     [cell setSelectionStyle:UITableViewCellSelectionStyleBlue]; 
     [cell setSelected:YES]; 
    } 

    return cell; 
} 
+0

당신이 우리에게'있는 tableView를 게재 할 수 있습니까? – Alladinian

+0

아무 것도 추가하지 않았습니다 –

답변

1

그냥 -tableView:willDisplayCell:forRowAtIndexPath: 방법 안에 당신의 선택 논리를 이동합니다. 이 같은 뭔가 : didSelectRowAtIndexPath :`구현

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { 
    if(indexPath.row == self.selectedTopicIndex) 
    { 
     NSLog(@"DIE DIE DIE DIE DIE!!!"); 
     [cell setSelectionStyle:UITableViewCellSelectionStyleBlue]; 
     [cell setSelected:YES]; 
    } 
} 
+0

대단히 감사합니다! –

관련 문제