我已閱讀關於此功能didReceiveMemoryWarning
,實際上並沒有真正幫助。 我想展示一個UIAlert視圖來告訴用戶他即將採取的行動將導致內存問題。iPhone內存警報
因此,除了崩潰,這是一個骯髒的方式來通知用戶有收到內存警告,是否有可能實現的UIAlertView?
我已閱讀關於此功能didReceiveMemoryWarning
,實際上並沒有真正幫助。 我想展示一個UIAlert視圖來告訴用戶他即將採取的行動將導致內存問題。iPhone內存警報
因此,除了崩潰,這是一個骯髒的方式來通知用戶有收到內存警告,是否有可能實現的UIAlertView?
在您的應用程序委託類(如MyApplicationAppDelegate.m)實現didReceiveMemoryWarning方法:
- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
{
// Show an alert
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Warning"
message:@"Running low on memory"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
[alert release];
}
的行動,他即將採取將 導致問題的內存
如果有一些你知道的用戶採取的行動會導致記憶問題,你應該讓他們不要採取那個行動,或者當他們準備採取行動時, tview)。
這是唯一的出路嗎? – erastusnjuki 2010-02-24 13:29:45
好吧,它看起來像你要求的是iPhone操作系統預先分析任何即將運行(即時)作爲用戶操作結果的代碼,並在運行代碼之前確定(再次飛)通過運行代碼將發生內存問題。我不是100%肯定的,但如果有辦法做到這一點,我會感到震驚。這就是爲什麼蘋果有良好的編碼實踐和內存管理的原則。如果操作系統可以「向前看」或「展望未來」,並確定通過運行某些代碼會發生錯誤,那麼任何事情都不會崩潰。 – cmcculloh 2010-02-25 16:15:16
Pheelicks確實給你一個很好的回答你的問題,但這並不是你想要做的。當您收到此警告時,您已處於內存不足狀態。當您收到此警告時,您想要執行的操作是釋放盡可能多的內存。就像您可能保留在內存中的大圖像,大型字符串或任何其他大型對象。樂器將幫助你找到罪魁禍首。
此外,你還需要實現分配的內存很多的任何視圖控制器didReceiveMemoryWarning,使他們能夠做一些清潔和消毒那裏也
希望這有助於:)
這是否阻止應用後崩潰用戶按下「確定」? – erastusnjuki 2010-02-24 13:28:37
不是,它只是顯示警報。爲了防止崩潰,你必須做一些事情來恢復一些內存,例如擺脫不用的對象和視圖 – pheelicks 2010-02-24 14:11:51