Это отлично поработало для меня в браузерах на основе webkit (Chrome, Safari):
function isZoomed() {
var width, mediaQuery;
width = document.body.clientWidth;
mediaQuery = '(max-width: ' + width + 'px) and (min-width: ' + width + 'px)';
return !window.matchMedia(mediaQuery).matches;
}
В Firefox, похоже, не работает.
Это также работает в WebKit:
var zoomLevel = document.width / document.body.clientWidth;
Я бы использовал UIViewControllerContainment. Взгляните на
Способ Я бы установил, что у него есть UIViewController, у которого есть два ContainerViews. Один контейнер ContainerView будет иметь UITabBarController в нем, а другой будет иметь UIViewController для верхней панели.
Вот что я сделал в UIStoryboard [/g1]
Подкласс UIViewController и измените вид заголовка и заголовка в методе viewDidLoad:
с чем-то вроде этого:
- (void)viewDidLoad
{
[super viewDidLoad];
if (!self.title || [self.title isEqualToString:@""]) {
self.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Logo.png"]];
} else {
self.navigationItem.title = self.title;
}
}
Затем используйте этот подкласс на всех контроллерах представления, которые будут отображаться на ваших вкладках.