Отпустите графику, когда приложение перейдет в фоновый режим - PullRequest
3 голосов
/ 27 февраля 2012

В документации Apple вы можете обнаружить, что Apple рекомендует выпускать объемные данные, например изображения, когда ваше приложение переходит в фоновый режим.
Как освободить изображения из UIViews и другие данные?
Как правильно выпустить изображения из UIViews со всех viewController?
Как восстановить данные, когда приложение получает сообщение applicationWillResignActive?

Если у кого-то есть хороший пример или ссылка, пожалуйста, покажите его.

1 Ответ

1 голос
/ 27 февраля 2012

Добавить в приложение делегировать 2 метода

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    [[NSNotificationCenter defaultCenter] postNotificationName:NOTIFICATION_APP_BACKGROUND object:nil];
}

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    [[NSNotificationCenter defaultCenter] postNotificationName:NOTIFICATION_APP_BACKGROUND object:nil];
}

Сделать BaseViewController с методами:

- (id)init
{
    self = [super init];
    if (self) {
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appWillForeground) name:NOTIFICATION_APP_FOREGROUND object:nil];
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appDidBackground) name:NOTIFICATION_APP_BACKGROUND object:nil];
    }

    return self;
}


- (void)appDidBackground {
}

- (void)appWillForeground {

}
- (void)dealloc {
    [[NSNotificationCenter defaultCenter] removeObserver:self];
    [super dealloc];
}

Подкласс всех ваших контроллеров представления от BaseViewController. В методе appDidBackground вы должны освободить ненужные данные, в appWillForeground - восстановить их

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...