2012-03-30 2 views
0

우리 응용 프로그램에서는 UIScrollView의 이미지 목록을 표시합니다. 그리고 모든 이미지는 HD입니다. 그래서 우리는 페이지 2-3 번로드 할 때 응용 프로그램이 충돌합니다. 기억 문제 때문에.iPad 응용 프로그램의 메모리 문제

제게 어떤 제안을 해주시겠습니까? 사전에

감사합니다.

+2

수행 할 작업 제안 : 코드를 게시하여 수행중인 작업과 잠재적 인 메모리 누수가있는 위치에 대한 단서를 제공 할 수 있습니까? –

+2

코드가 없다면 내가 제안 할 수있는 최선의 방법은 UIViewController 하위 클래스의 didReceiveMemoryWarning : 메서드를 구현하고 현재 보유하고 있지 않은 리소스를 그대로 사용하는 것입니다. –

+0

단일 누출 가능성은 없습니다. 정적 분석기로 확인했습니다. 우리는 HD 이미지로 뉴스 목록을 보여줍니다. – MinuMaster

답변

2

해당 페이지의 모양에 따라 UITableView로 구현하는 것이 좋습니다. 왜? UITableView는 현재 화면에 표시된 내용 만 표시하는 데 적합합니다.

단순히 몇 가지 UIImageView 객체를 scrollView에 추가하는 것보다 설정하는 것이 약간 복잡하지만 모든 것이 더 잘 수행되고 객체로드/언로드를 관리합니다.

UITableView 개체는 사용자가 테이블을 스크롤하는 것을 결코 알 수 없을 정도로 매우 구성 가능합니다. 나는 그것들을 콘텐츠 큐잉/큐 풀링 시스템으로 생각한다. 설정하는 데 조금 더 시간이 걸립니다.

  • 는 또한 선택적으로 디스크가있는 AsynchronousImageView을 고려 (즉,이 imageView.image = 전무를 설정) 때문에 이미지를 언로드,

    • prepareForReuse 방법을 자신의있는 UITableViewCell 클래스를 생성하고 오버라이드 (override) : 당신은 예를 들어에하는 것 캐싱 기능
    • 오버라이드 (콘텐츠가 디바이스에 국부적이 아닌 경우) 데이터 소스/위임 방법이므로 각 셀의 높이를 적절하게 계산하여있는 UIImageView의 치수

    기본적 jQuery과 읽기 PR 부여되었는지 프로그래밍 가이드, 특히 UITableViewCells에 관한 부분과 내용 제공

    더 쓸 수는 있지만 정확히 무엇을 하려는지는 알 수 없습니다.

  • 0

    정적 분석기는 계측기에서 누출 탐지를 실행하는 것과 거의 비슷합니다. 심지어 보관 사이클 개체를 찾을 수 있도록 몇 가지 단계가 필요합니다. @bbum에 멋진 게시물이 있습니다. over here

    관련 문제