Tag: viewdidunload

cordovaiOS自定义插件:处理内存警告

我正在开发一个使用cordova(2.1)的iOS应用程序,以及一些自定义插件。 我试图面对的问题如下:当我显示我的插件(基本上是一个相机插件比内置的cordova插件更多的function)有时我收到一个内存警告,并随之卸载包含webview的视图。 这对我来说是一个非常大的问题,因为一旦我的imagePicker被解雇,webview不会被恢复。 我看了一下CDVCamera的插件源,我注意到了这一点: (1)插件保存webview: // we need to capture this state for memory warnings that dealloc this object cameraPicker.webView = self.webView; 在这里我不明白发生了什么,好的我们保存webview万一有内存警告它将被卸载,但我无法弄清楚如何/在框架中的webview恢复。 (2)插件使用一个名为hasPendingOperation的Bool属性,这个属性如果我理解的话,在接收到内存警告时被CDVViewController使用,以避免插件激活时清除内存。 我不明白的第一件事是以下为什么当我的控制器收到内存警告超级控制器(CDVViecontroller)没有收到它? 其次,是否可以将CDVCamera插件使用的模式与CDVViewController结合使用来处理自定义插件中的内存警告? 任何帮助pipe理与cordova的内存警告,以避免webview被卸载将不胜感激。

viewDidUnload不调用alloc / init初始化的viewcontroller没有xib文件

为什么不调用viewDidUnload方法,当我不使用xib和使用alloc / init来初始化我的ViewController时,我通过模拟器模拟任何iOS版本的内存警告? 似乎这个方法从来没有被调用。 如果我通过使用xib文件的alloc / initWithNibName创build控制器,则成功调用viewDidUnload方法。 为什么会发生? xib文件是否需要所有视图控制器正常处理内存警告?

加载视图控制器后,应用程序运行缓慢,然后卸载大约15-20次

使用:Xcode 4.6故事板ARC模型inheritance到SecondViewController 我有一个应用程序,主要的ViewController加载一个新的veiwController时,设备旋转到右侧。 当应用程序启动时,一切都很好。 如果我旋转设备,然后回来卸载第二个视图控制器,约15-20倍的应用程序是非常长老。 我已经缩小了,它只发生在seconed视图控制器加载时,只有当我旋转设备的时间nunmber。 我也缩小了这是一个记忆问题。 我安装了一个应用程序,logging使用和可用的内存。 当我旋转设备多次时,我的记忆从400mb到900mb。 我正在尝试尽可能多地提供信息。 每个视图有8个NSTimers每秒钟触发。 有没有办法编程卸载视图,以确保被卸载? 我已经包含这个代码来确保加载和卸载: ` – (void)setView:(UIView *)aView {NSLog(@“>>> Entering%s <<<”, PRETTY_FUNCTION ); if (!aView) // view is being set to nil { NSLog(@"Should be unloading now"); } [super setView:aView]; NSLog(@"<<< Leaving %s >>>", __PRETTY_FUNCTION__); } 日志结果:2013-04-22 16:42:03.588 xxxxxxxx [xxxxxxx] >>>input – [GraphViewController setView:] <<< 2013-04-22 […]