我的應用程序是一個問題遊戲。我有一個視圖控制器Question_1
;這是每個問題都會加載的唯一視圖控制器。我在另一個名爲HowToPlay
的類中創建了一個數組。該數組使用字符串加載,每個代表一個問題。在Question_1
的viewDidLoad
方法中,它隨機選擇一個問題,然後更改問題的文本。在用戶按下下一個按鈕後,它會重新加載,直到它意識到數組中沒有任何內容可以加載,然後通過控制器加載遊戲。問題發佈視圖控制器
這裏是如何我裝我的筆尖文件重新加載的問題:
[background release];
[menu release];
[changeOnWrong release];
[callPauseLabels release];
[youArePaused release];
[only1Pause release];
[resume release];
[afterPause release];
[pause release];
[timerString release];
[timerLabel release];
[trueButton release];
[falseButton release];
[continueButton release];
[showYesNo release];
[scoreAmmount release];
callPauseLabels = nil;
afterPause = nil;
countDown = nil;
Question_1 *Q1 = [[Question_1 alloc] initWithNibName:@"Question 1" bundle:nil];
Q1.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:Q1 animated:YES];
[Q1 release];
Q1 = nil;
我遇到的問題是,每個這種觀點被重新加載的時候,它不會釋放舊人,並不斷在建設中記憶。這就像每個視圖控制器不斷加載在另一個之上一樣。我需要它釋放舊的視圖控制器。我試過這樣的事情:
[self dismissModalViewControllerAnimated:NO];
[self.parentViewController dismissModalViewControllerAnimated:NO];
它仍然不會從內存中釋放舊視圖。
看起來像開始使用ARC的正確的一天! – jtbandes
這只是測試版的一部分,我不會能夠從它上傳到應用商店? – Jacob
您可以更改標籤中的文本,刷新定時器數據,刷新按鈕狀態等,而不是加載和釋放對象 – tipycalFlow