chcę wczytywać obrazy Sot, że kiedy dodać swój UIImageView do mojego currentView, PNG są już w pamięci, załadowany, napompowane itpWymuszenie obciążenia obrazów na iOS przekręceniem
Jak widać z tego czas profilowania, obrazy są ładowane, gdy są wyświetlane:
W tym samym czasie już wstępnie ładuję te obrazy. Po prostu, kiedy załadować ten pogląd, ja dokładnie utworzyć wszystkie obrazy i widoki graficzne dla tych animacji przy użyciu tego kodu:
- (UIImageView*)createAnimationForReel:(NSString*)reel ofType:(NSString*)type usingFrames:(NSInteger)frames{
UIImageView *imageView = [[UIImageView alloc] init];
NSMutableArray *imageArray = [NSMutableArray arrayWithCapacity:frames];
for (int i=0;i<frames;i++){
NSString *image;
if(i<10){
image = [NSString stringWithFormat:@"%@_0%i", reel, i];
} else {
image = [NSString stringWithFormat:@"%@_%i", reel, i];
}
NSString *path = [[NSBundle mainBundle] pathForResource:image ofType:@"png" inDirectory:type];
UIImage *anImage = [[UIImage alloc] initWithContentsOfFile:path];
[imageArray addObject:anImage];
}
imageView.animationImages = [NSArray arrayWithArray:imageArray];
imageView.animationDuration = 2.0;
return imageView;
}
I kiedy czytam dokumentację mówi: „Ta metoda ładuje dane obrazu do pamięci i oznacza go Jeśli dane zostały wyczyszczone i muszą zostać ponownie załadowane, obiekt obrazu wczytuje te dane ponownie z określonej ścieżki. " mówienie o initWithContentOfFile. Dlatego mój obraz "powinien" zostać załadowany.
Ale nie.
Z pewnością czegoś brakuje w moim odbiciu. Ale co?
Wygląda wspaniale i rzeczywiście wczytuje obrazy, z wyjątkiem sytuacji, gdy nie są one buforowane i nadal są ponownie ładowane za każdym razem, gdy są wyświetlane. Taki wstyd! Zaczynam myśleć, że ma to więcej wspólnego ze sposobem działania UIImageView, a nie z UIImage. –