2013-09-30 3 views
1

내 IOS 응용 프로그램에서 일부 작업이 완료되기 전에 표 셀을 여러 번 선택할 수있는 문제가 발생했습니다.표 셀을 한 번만 누르기 허용

내 상황은 사용자 유형에 값을 입력 한 후 제출하는 것입니다. 내 코드를 완전히 테스트하는 동안 내 활동 표시기가 표시되기 전에 제출을 여러 번 누를 수 있음을 알았습니다. 이 결과 여러 번 제출됩니다.

어떻게하면이 문제를 해결할 수 있습니까? 어떤 제안이라도 좋을 것입니다. 감사.

답변

2

:

-(void)yourOperationIsFinished{ 
    [self.view setUserInteractionEnabled:YES]; 
} 
: 당신이 당신의 작업의 완료를 처리하는 곳, 그리고

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    [self.view setUserInteractionEnabled:NO]; 
} 

는보기를 다시 활성화

+0

예이 방법을 사용했지만 어떤 이유로이 방법을 사용하지 못했습니다. 고마워, 그 위대한 작품. – jmr1706

0

적어도 한 번 셀을 선택했는지 여부를 나타내는 플래그를 사용할 수 있습니다.이 플래그는 처음에 NO입니다. 테이블 뷰 셀을 선택하면 즉시 tableView:didSelectRowAtIndexPath: 메서드가 호출됩니다. 이 방법에서는 플래그를 YES으로 설정할 수 있습니다. 당신은 또한 tableView:didSelectRowAtIndexPath: 전에 호출되는 방법 tableView:willSelectRowAtIndexPath:을 구현하는 경우
, 당신은 한 깃발이 tableView:didSelectRowAtIndexPath:에 대한 첫 번째 호출 후 NO, 또는 nil 한, 중 제출 된 indexPath를 반환 할 수 있습니다. 이 경우 셀은 더 이상 선택되지 않습니다. 당신이 (모든 UITableViewCells 포함) 전체보기를 사용자 상호 작용을 비활성화 할 수 tableView:didSelectRowAtIndexPath:에서