У меня есть UIViewController, который я хочу загрузить из NIB, в котором определен прокси-объект (заполнитель). В первый раз, когда я загружаю его, я прохожу этот ригамароль:
MyViewController *screen = [[MyViewController alloc] init];
NSDictionary *proxyDict = [NSDictionary dictionaryWithObject:myObject forKey:@"MyProxy"];
NSDictionary *optionsDict = [NSDictionary dictionaryWithObject:proxyDict forKey:UINibExternalObjects];
[[NSBundle mainBundle] loadNibNamed:@"MyViewController" owner:screen options:optionsDict];
Таким образом, это устанавливает прокси-объект, объявленный как «MyProxy» в файле NIB, чтобы указать на объект myObject
, который уже существует. Это много работает.
Теперь, если я перейду к другому экрану и выведу предупреждение о нехватке памяти, он выгружает вид. когда я возвращаюсь к этому экрану, он выполняет автоматическую перезагрузку представления, в котором нет места для вручную определенного словаря опций для настройки объектов прокси, а затем происходит сбой при попытке найти объект, с которым связана «MyProxy».
Как я могу сделать эту работу?