2011-03-02 3 views
0

많은 앱에서 메모리 사용에 힘든 시간을 보냈습니다. 거의 모든 메모리 누출을 제거했습니다. 한 섹션에는 꽤 큰지도의 확대/축소 UIScrollView이 있습니다 (2437x1536). 배열에서 png를 선택합니다. +imageNamed:을 사용하기 전에는 이미지를 캐시에 보관할 수 있기 때문에 가끔 앱이 제대로 실행되지 않을 수 있다고 들었습니다. 캐시를 사용하면보기를 사용하지 않아도 더 많은 메모리를 사용할 수 있기 때문입니다. 이제 +imageWithData:을 사용하고 있습니다. 앱이 아직 추락 한 것은 아니지만지도 섹션을 실행하는 네 번째 또는 다섯 번째 시간에 일부 이미지 만 나타나고 깜박이는 검은 영역이 있습니다. 이전에는 imageNamed가 발생하지 않았습니다. 때로는 직사각형의 꼭지점을 제외하고는 완전히 사라지고 다른 뷰로 돌아가며 이미지가 깜박입니다.UIScrollView에서 imageWithData를 사용하는 글리치가있는 검은 색 패치

지도 이미지를 표시해야합니다. 그것은 뷰의 -initWithFrame: 방법입니다 : 명백한

mapList = [[NSMutableArray alloc] init]; 
[mapList addObject:@"Pacific_Map"]; 
[mapList addObject:@"Atlantic_Map"]; 

NSString *mapFileLocation = [[NSBundle mainBundle] pathForResource:[map_List objectAtIndex:mapNum] ofType:@"png"]; 

NSData *mapIMGData = [NSData dataWithContentsOfFile:mapFileLocation]; 
mapImageView = [[UIImageView alloc] initWithImage:[UIImage imageWithData:mapIMGData]]; 

아무것도가이 효과를 일으키는 원인이 될 것이다?

답변

0

죄송합니다. 외부 화면에 이미지를 두 번 할당하고있었습니다. 이것은 여전히 ​​결국 충돌이됩니다. 나는이 기법으로 이미지를 캐싱하지 않을 것이라고 생각했다.

관련 문제