2011-11-06 2 views
0

각 셀의 축소판으로 사용할 일부 이미지를 다운로드하려는 경우 이런 종류의 문제가 있습니다.UITableViewCell의 스레드를 해제하기 전에 스레드를 중지하십시오.

이 동작을 달성하기 위해 각 이미지를 다운로드하고 저장하는 역할을하는 UITableViewCell에 스레드가 있습니다.

하지만 셀이 더 이상 보이지 않으면 스레드가 작동하지 않게하고 싶습니다.
이 문제를 해결하는 데 도움이 될 viewWillDisappear과 같은 UITableViewCell에 대한 대리자 메서드가 있습니까?

내가 잘못 생각하면이 같은 행동을 달성하는 데 도움이되는 다른 방법이 있습니까?

도움 주셔서 감사합니다.

답변

0

UITableViewCell은 화면에 무엇인가를 렌더링하기 위해입니다. 테이블 뷰를 제어하는 ​​컨트롤러는 미리보기 이미지를 다운로드 한 다음 미리보기 이미지가있는 데이터를 다시로드해야합니다.

tableview는 셀이 하나 뿐이므로 여러 행을 표시하기 위해 셀을 복사합니다.

대리자 메서드 "willDisplayCell"을 사용하여 사용자 지정 테이블 뷰 셀의 데이터를 설정합니다.

+0

테이블보기에는 화면에 표시된만큼의 셀이 있으며 복사되지 않습니다. – MrMage

+0

여러 열이있을 수 있지만 행이 여러 개인 경우 셀 인스턴스가 하나만 복사됩니다. –

+0

@AntwanvanHoudt 답장을 보내 주셔서 감사합니다! 나는 그것을 알았지 만 그러한 기능이 있다면 원하는 것을 구현하는 것이 더 쉬울 것이라고 생각했습니다! 모든 경우에 모든 것이 이제는 잘 작동합니다! – astazed

0

재사용 가능한 셀 메커니즘 때문에 UITableViewCell의 단일 인스턴스는 다른 데이터를 표시하기 위해 재사용 할 수 있으므로 UITableViewCell은이 논리에 사용되는 것이 아니라 프레젠테이션 목적으로 만 사용해야합니다. 앱 로직을 다시 생각해 보시기 바랍니다.

관련 문제