2
UIImageViews가있는 UIView가 두 개 있습니다. 보기 처음으로보기를 표시 할 때 표시되기 전에 눈에 띄는 지연 (0.5 초 정도)이 있습니다. 다시 표시되면 모든 것이 작동합니다.UIImageView는 처음 표시 될 때 지연이 발생합니다.
나는 모든보기를 추가하고 제거하여이 문제를 해결할 수있었습니다. 이처럼 :
는[self performSelectorOnMainThread:@selector(addAndRemoveAllViews)
withObject:nil
waitUntilDone:NO];
기능은 [view removeFromSuperview]
다음 모든 뷰와 [addSubview:view]
을 통해 루프. 이미지가 표시되지 않는 동안로드되도록 트리거하는 것 같습니다.
질문 :
- 이 모두 나에게 해결 방법 같은 느낌. 이러한 유형의 문제를 처리하는 더 좋은 방법이 있습니까?
- 완료되면 콜백 또는 무언가를 얻을 수 있습니까? 완료되면 애니메이션을 실행하고 싶습니다.
업데이트 :
이미지는 다음과 같이 NSData
에서 만든이 :
[[UIImageView alloc] initWithImage:[UIImage imageWithData:rawData]];
감사합니다. NSData에서 이미지 생성에 대한 내 업데이트를 확인하십시오. 이 후 UIImageViews로 무엇인가해야합니까? 당신은 UIImageView의 크기를 축소 언급합니까? –
흠, 홀수입니다. imageWithData가 캐싱되어서는 안됩니다. 또한 이미지 자체를 더 작게 만드는 방법에 대해 이야기 했으므로 (이미지를로드하는 데 걸리는 시간이 적어 짐) ImageView를 더 작게 만들지 않습니다. 시스템이 다른 작업을 수행하는지 확인하기 위해 이미지가로드되는 동안 TimeProfiler 도구를 사용해보십시오. –
아마도 관련이 있습니다. 나는이 기간 동안 때때로 메모리 경고를받습니다. 뷰에는 1024x768의 여러 이미지가 포함되어 있습니다. 그러나 할당/기억 장치는 내가 8-10MB (iPad 장치)를 사용하고 있다고 알려줍니다. 내가 왜 단지 10MB의 RAM을 사용하고있을 때 나는 메모리 경고를 받는지 이해하지 못한다. 이것이 관련 될 수 있습니까? –