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.
-(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)
{
}
];
}
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?