Таким образом, ваша проверка приложения стала активным уведомлением, а затем установила размер панели инструментов. Затем вы устанавливаете нестандартный размер, и после того, как вы установили размер, что-то приходит и меняет его обратно на размер по умолчанию. Это об этом?
Я думаю, что был бы лучший способ сделать это, но ...
Вы можете попытаться отложить изменение до выполнения основного цикла выполнения. Вы можете сделать это с помощью GCD, чтобы поместить действие в фоновый поток, который возвращает его в основной поток.
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
dispatch_async(dispatch_get_main_queue(), ^{
// set toolbar frame
self.naviagtionController.toolbar.frame = CGRectMake(X,Y,W,H);
});
});