2012-08-02 4 views
0

여기에 매우 이상한 행동이 있습니다. RSS 키를 사용하여 XML 피드를 다운로드하고 구문 분석합니다. 여태까지는 그런대로 잘됐다. 그것은 몇 밀리 초 동안 발생합니다. 그 일이 끝나면 내 TableView에서 reloadData를 호출합니다. 그 직후 numberOfRowsInSection과 heightForRowAtIndexPath가 호출됩니다. 약 5 초 동안 아무 일도 일어나지 않습니다. 5 초 후에 만 ​​cellForRowAtIndexPath가 호출됩니다.UITableView는 heightForRowAtIndexPath와 cellForRowAtIndexPath 사이에서 5 초 동안 중단됩니다.

그리고 더욱 더 이상해집니다! 아무 일도 일어나지 않는이 기간 동안, tableView는 이미 완전히 반응합니다. UI와 상호 작용할 때 cellForRowAtIndexPath가 즉시 호출됩니다.

reloadData 직후에 tableview에 setNeedsDisplay를 배치해도 아무런 변화가 없습니다. 이 문제가 iOS의 Window-Server에 연결되어있는 것으로 보입니다.

작은 요약 지금 내게 어떻게 보이는지 : 휴대 전화가 아무 것도하지 않는 동안 UI의 업데이트 프로세스가 약 5 초 동안 반응하지 않는 것 같습니다.

아무에게도 이것이 어떻게 원인을 추적 할 수 있습니까?

답변

1

My Fail! dispatch_sync (dispatch_get_main_queue() ... 다시 주 스레드로 들어가고 모든 것이 잘 작동합니다 ...

관련 문제