iOS9: UIViewController: viewWillTransitionToSize не вызывается при изменениях разделенного представления, когда viewController выполняется во втором UIWindow

Мое приложение использует два UIWindows: первое работает с основным приложением, а второе - с некоторыми элементами, которые будут показаны на первом плане. Оба окна имеют контроллер вида. Когда размер разделенного представления моего приложения изменяется, viewWillTransitionToSize вызывается в основных приложениях UIViewController, но не в viewController второго окна. Когда изменяется ориентация приложения, вызываются оба метода. Что я могу сделать, чтобы оба селектора viewWillTransitionToSize были вызваны?

1 ответ

В качестве обходного пути я наблюдаю за размером основного окна приложения...

    [[UIApplication sharedApplication].delegate.window 
        addObserver: самостоятельно 
        forKeyPath:@"кадр" 
        Варианты:0 
        Контекст:0];

... и обновить макет содержимого второго окна:

    - (void) Наблюдение ValueForKeyPath:(NSString *)keyPath 
        ofObject:(ID) объекта 
        изменить:(NSDictionary *) изменить 
        context:(void *)context {

        if (object == [UIApplication sharedApplication].delegate.window) {
            [self updateLayout];
        }    
    }
Другие вопросы по тегам