iPhone内存警报

时间:2010-02-24 12:16:48

标签: iphone memory uialertview

我已经读过这个函数didReceiveMemoryWarning实际上并没有真正帮助过。 我想展示一个UIAlert View来告诉用户他将采取的行动将导致内存问题。

除了崩溃之外,这是一种令人讨厌的方式来通知用户收到内存警告,是否有可能实现UIAlertView?

3 个答案:

答案 0 :(得分:3)

在您的应用程序委托类(例如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];
}

答案 1 :(得分:1)

Pheelicks确实给了你一个很好的答案,但这绝对不是你想要做的。当您收到此警告时,您已经处于低内存状态。收到此警告时要执行的操作是释放尽可能多的内存。就像您可能保留在内存中的大型图像,大型字符串数组或任何其他大型对象一样。仪器将帮助您找到罪魁祸首。

另外,你还想在任何分配大量内存的视图控制器上实现didReceiveMemoryWarning,这样他们也可以在那里做一些清理

希望这会有所帮助:)

答案 2 :(得分:0)

  他即将采取的行动将会发生   导致内存问题

如果你知道用户服用会导致内存问题,你应该让他们不要采取行动,或者只是在他们即将采取行动时自己发出警告(使用警报视图)。 / p>