메모리 사용량이 일정한 슬라이드 쇼보기 컨트롤러가 있으며, 탭하면 다른보기 컨트롤러로 전환됩니다. 스위치하는 동안 메모리 사용량이 급증하고 안정적으로 유지됩니다. (나는 보통이라고 생각합니다.) 그런 다음 30 초 후에 타임 아웃 &이 슬라이드 쇼보기 컨트롤러로 돌아가고 메모리 사용량이 원래보기 컨트롤러보다 높습니다. 두 스위치 모두 세그 (segues)를 사용하고 있습니다. &보기를 눌러 전환하면 메모리가 다시 급증합니다. 이번에는 지난 번에 스파이크 한 것보다 더 많이 급증했습니다. 이것은 영원히 계속 & 계속됩니다. 다음 그림은 다음과 같습니다UIViewController 사이를 전환 할 때 어떤 유형의 메모리 문제가 발생합니까?
이 경고는 콘솔에 진열 유지 :
경고 : 시도는 그보기 창 계층 구조에없는 에 제시!
어떤 유형의 메모리 문제가 발생하며 메모리 사용량이 증가 할 수있는 원인은 무엇입니까?는
편집 :
여기내가 슬라이드 쇼보기 컨트롤러에 다시 갈거야 방법입니다
timeOut = [NSTimer scheduledTimerWithTimeInterval:25 target:self selector:@selector(timeOutMethod) userInfo:nil repeats:NO];
-(void) timeOutMethod{
[self performSelector:@selector(loadSlideshowView)
withObject:nil
afterDelay:5];
}
-(void) loadSlideshowView{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
SlideShowViewController *myVC = (SlideShowViewController *)[storyboard instantiateViewControllerWithIdentifier:@"slideShowImages"];
[self presentViewController:myVC animated:YES completion:nil];
}
시간이 초과되면 이전 컨트롤러로 어떻게 돌아갈 지 - 코드를 표시 할 수 있습니까? 원래의보기를 푸는 대신보기의 새로운 사본을 다시 표시하는 것처럼 들립니다. –
@AliBeadle 나는 내 질문에 그것을 추가했습니다. – DCAdams
지연 기간을 줄이고 어떤 결과가 나타나는지보십시오. 또한 슬라이드 쇼보기 컨트롤러는 이전보기 컨트롤러를이 컨트롤러에 연결합니까? 그렇다면보기 컨트롤러를 다시 표시하는 대신 dismissViewController 함수를 수행하면됩니다. – Konsy