스크롤 할 때 scrollToRowAtIndexPath가 완료 될 때 알아야합니다.IOS가 스크롤 할 때 NSTable scrollToRowAtIndexPath가 완료되면 알 수 있습니다.
행이 이미 있고 테이블이 스크롤되지 않는 경우 때문에 스크롤 루틴을 사용할 수 없습니다.
가능한 경우 타이머/무효화를 사용하지 않을 것입니다. 당신이 [tableView scrollToRowAtIndexPath:indexPath...
를 호출하기 전에
스크롤 할 때 scrollToRowAtIndexPath가 완료 될 때 알아야합니다.IOS가 스크롤 할 때 NSTable scrollToRowAtIndexPath가 완료되면 알 수 있습니다.
행이 이미 있고 테이블이 스크롤되지 않는 경우 때문에 스크롤 루틴을 사용할 수 없습니다.
가능한 경우 타이머/무효화를 사용하지 않을 것입니다. 당신이 [tableView scrollToRowAtIndexPath:indexPath...
를 호출하기 전에
는 질문에 대답하지 않는 등 여기에 ... 어떻게되는지 ... 사람이 더 좋은 방법이 있다면
In routine that tells the indexPath to scroll to
Scroll to IndexPath
tableMoving = true
set NSTimer to fire MovingDone at 0.1
In scrollViewDidScroll
if tableMoving
invalidate timer
timer = nil
In scrollViewDidEndScrollingAnimation
if tableMoving
call MovingDone
In MovingDone
moving = false
// do end of table scrolling code here
, 이렇게 :
BOOL visible = NO;
for (UITableViewCell *cell in [tableView visibleCells])
if ([indexPath isEqual:[tableView indexPathForCell:cell]]) {
visible = YES;
break
}
당신은 당신이 어떤 대리자 메서드를 처리 할 때, 당신의 뷰 컨트롤러의 멤버 변수로 볼 점은 그 값을 확인할 수 있습니다 할 수 있도록해야하는 경우.
음 인 NSTimer를 사용했다 밝혀졌다. 테이블이 여전히 위로 스크롤 될 수 있습니다. 또한 휴식은 고토입니다. 또한 비동기 방식으로 알림을 받아야합니다. – ort11