pamięć nie zwalnia z ARC i storyboard w iOS 5.1
mam problemy z pamięcią w mojej aplikacji, aplikacja działa dobrze, z wyjątkiem tego, że ulegnie awarii po ostrzeżeniu o małej pamięci i będzie bardzo opóźniona w użyciu przez 10 do 20 minut.
EDIT: jak poptoviewcontroller?
introvideo-> welcomeview & tutorialview-> mainviewcontroller-> scannerviewcontoller-> questionview -> (jeśli odpowiedź jest poprawna -> correctView) else -> wrongView
jak mogę wrócić do kontrolera mainView?
poniższy kod rozwiązuje dodawanie kontrolera widoku do stosu navigationcontroller.viewcontroller. Jak używam storyboardu, przesuwając się z viewcontrollera do innego widoku contoller bez popingu. kod zostanie wyświetlony do kontrolera viewcontroller, który jest już w stosie viewcontroller.
przepływ mojej serii ujęć w załączeniu:
http://dl.dropbox.com/u/418769/storyboard%20flow.png
intro video -> widok powitalny i widok samouczka (jeśli nazwa użytkownika! istnieje) -> główny kontroler widoku
jest to główny plik, do którego użytkownik będzie zawsze przechodził.
http://dl.dropbox.com/u/418769/scannerViewController.h
http://dl.dropbox.com/u/418769/scannerViewController.m
Używam niestandardowego segue do popcontrolerów, które rozwiązały część problemu.
<code>-(void)perform { UIViewController *sourceVC = (UIViewController *) self.sourceViewController; NSInteger index = -1; NSArray* arr = [[NSArray alloc] initWithArray:sourceVC.navigationController.viewControllers]; for(int i=0 ; i<[arr count] ; i++) { if([[arr objectAtIndex:i] isKindOfClass:NSClassFromString(@"mainViewController")]) { index = i; } } [UIView transitionWithView:sourceVC.navigationController.view duration:0.5 options:UIViewAnimationOptionTransitionCrossDissolve animations:^{ [sourceVC.navigationController popToViewController:[arr objectAtIndex:index] animated:NO]; } completion:^(BOOL completed) { } ]; } </code>
jednak aplikacja nadal pobiera pamięć RAM i VRAM.
Naprawdę doceniam każdego przyjaciela, który pomoże rozwiązać moje pytanie, czy silna wartość spowodowała ten problem?