долгое время запуска ... нужна помощь - PullRequest
0 голосов
/ 09 июня 2010

Мое приложение все сделано и работает отлично. Итак, теперь я запустил его на старом iPhone, и запуск приложения занимает 17,3 секунды!?!? я потратил много времени на его изучение и обнаружил, что причина загрузки занимает много времени, потому что у меня много просмотров, и у каждого представления есть фоновое изображение png. Все мои взгляды и сделаны в IB и в моем коде:

#import "MyTestAppDelegate.h"
#import "MyTestViewController.h"

@implementation MyTestAppDelegate

@synthesize window;
@synthesize viewController;


- (void)applicationDidFinishLaunching:(UIApplication *)application {    

    // Override point for customization after app launch 

    [window addSubview:viewController.view];
    [window makeKeyAndVisible];
}


- (void)dealloc {
    [viewController release];
    [window release];
    [super dealloc];
}
@end

В конце кода, где написано:

[window addSubview:viewController.view];

приложение, похоже, загружает все представления в перо одновременно. Все PNG со всех просмотров около 12 МБ. При запуске приложения не требуется одновременно загружать все представления.

Есть ли способ, которым я могу загрузить только первый "домашний" вид при запуске? (Все виды являются частью одного и того же пера.)

Ответы [ 2 ]

4 голосов
/ 09 июня 2010

Вы можете попробовать разделить ваши взгляды на разные перья.Рекомендуется использовать один кончик для UIViewController и UIView.

Если вы сделаете это, представление будет загружено только при первом обращении.

2 голосов
/ 10 июня 2010

Когда вы загружаете перо, среда выполнения создает все объекты, высушенные в кончике. Если у вас есть все ваши представления в одном кончике, то каждое отдельное представление будет инициализироваться и загружаться, даже если оно не видно. В противном случае ссылки в кончике не могут быть разрешены.

Обычно каждое перо должно быть парой вид / вид-контроллер. Контроллеры нескольких видов можно безопасно размещать в одном и том же наконечнике, поскольку они обычно являются относительно легкими объектами.

...