2012-02-05 64 views
0

我使用Xcode的Apple UIPageViewController模板創建交互式相冊。一切工作正常,除了每當我打開一個頁面(創建一個新的viewcontroller)的內存分配上升,直到應用程序崩潰。它在我看來,視圖控制器永遠不會'釋放'(我仍然允許在ARC環境中使用該詞)?它似乎與頁面的內容沒有任何關係,因爲當我註釋掉所有內容創建內容時... DataViewController內存在每次翻頁時都會保持不斷上升,而不是像當一個大的圖像被包括在內時,它仍然在不停地爬行。UIPageViewController設置中的viewcontrollers是否需要釋放?

這裏有完全相同的問題:PageViewController: How to release ViewControllers added to it?但這個處理前弧&故事板的情況。添加autorelease是不允許的,當然似乎編譯器沒有關心它。 :-(

有什麼建議?

+0

嘿!!!,我面臨同樣的問題。在我的情況下,有三個視圖控制器繼續在頁面視圖控制器上播放。我在每個視圖控制器的didReceiveMemoryWarning上放置了斷點。並在警告來臨時。斷點在每個視圖控制器上觸發視圖控制器啓動的次數。這意味着他們沒有被分配。如何解決它,請建議。 – harshitgupta 2012-10-30 06:32:03

回答

0

我有同樣的問題建立一個圖畫書具有非常大的圖像。我去給你提供了一個鏈接,並解決它,我的其他問題。添加「autorelease」的FreeS 。起來

UIPageviewcontroller委託方法 「viewControllerAtIndex」 存儲器I由:

// Create a new view controller and pass suitable data. 
ContentViewController *contentViewController = [[ContentViewController alloc] initWithNibName:@"ContentViewController" bundle:nil]; 

並加入自動釋放

// Create a new view controller and pass suitable data. 
ContentViewController *contentViewController = [[[ContentViewController alloc] initWithNibName:@"ContentViewController" bundle:nil] autorelease] ; 

這不包括在蘋果的例子中,但我也爲每個頁面使用xib。我一直在使用儀器進行調試,看到內存立即被回收,而dealloc在以前沒有被調用。

這裏找到答案.... https://stackoverflow.com/a/7934392/1212585

+0

謝謝。但事實證明,這不是問題。 – 2012-03-11 11:02:40

3

原來,這個問題是遠遠不夠的詛咒「的UIImage imagedNamed」建設。這可能是我自己的錯,因爲我在某處閱讀後發現這個問題已經在最近的xcode版本中得到了修復。所以我認爲圖像不再被緩存,反之亦然。一旦我將所有內容全部更改爲「UIImage imageWithContentsOfFile」,該應用程序就開始順利地作爲嬰兒底部工作。

+0

嘿!!!,我面臨同樣的問題。在我的情況下,有三個視圖控制器繼續在頁面視圖控制器上播放。我在每個視圖控制器的didReceiveMemoryWarning上放置了斷點。並在警告來臨時。斷點在每個視圖控制器上觸發視圖控制器啓動的次數。這意味着他們沒有被分配。如何解決它,請建議。 – harshitgupta 2012-10-30 06:31:28

+0

這裏同樣的問題。 試圖建立一個兒童應用動畫動畫卡通和播放聲音。 每個動物細節頁面被加載到UIPageViewController中。 除非收到內存警告,否則UIPageViewController從不釋放內存。 imageWithContentsOfFile是什麼意思解決了這個問題? 我使用imageNamed加載圖像。它可能是未釋放內存的原因嗎? Thanx Mr. Jigs。 – Add080bbA 2014-10-30 10:56:44

+0

Thanx Mr. Jigs。012WimageWithContentsOfFile確實工作 我不能相信它。我近一個月就爲此丟了頭髮。 突然UIPageViewController開始釋放內存。 imageNamed和imageWithContentsOfFile有何不同:方法? 這怎麼可能是問題?我們怎麼能猜到這個? 超過一個月,尋找這個UIPageViewController緩存問題。 積分爲你。 – Add080bbA 2014-10-30 11:53:18

相關問題