2017-02-13 4 views
0

Я создаю приложение, в котором у меня есть панель навигации, которая содержит пользовательское фоновое изображение. Похоже на это.Удалить строку состояния, не делая навигационную панель короче Objective-C

Image of NavBar with Status bar

Я хочу удалить строку состояния (так как она охватывает часть изображения Nav Bar), однако, когда я делаю это укорачивает NavBar, например, так:

Image of NavBar without Status bar

I хотите найти способ избавиться от строки состояния, не сокращая навигационную панель и не создавая изображения на navBar.

Вот код, который я использую для установки фонового изображения NavBar.

[[UINavigationBar appearance] setBackgroundImage:[[UIImage imageNamed:@"navigationBar"] stretchableImageWithLeftCapWidth:0 topCapHeight:0] forBarMetrics:UIBarMetricsDefault]; 

Спасибо!

Редактировать: Обратите внимание, что я попытался просто изменить высоту панели навигации, однако фоновое изображение оставалось несоразмерным.

+0

Я попытался изменить высоту панели навигации, но фоновое изображение по-прежнему был из пропорции. – Nshweky

+0

обновил ответ для вас, ваш вопрос был непонятен мне до сих пор. –

ответ

1
UIImageView *logoImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"yourLogoImage"]]; 
[logoImageView setFrame:CGRectMake(0.0f, 0.0f, 200.0f, 44.0f)]; 

logiImageView.contentMode = UIViewContentModeCenter; 

self.navigationItem.titleView = logoImageView ; 

Зафиксирует растяжение UIImage.

EDIT:

или

self.navigationController.navigationItem.titleView = logoImageView; 
+0

Это не сработало для меня. Может быть, потому, что в контроллере навигации встроен контроллер панели вкладок? – Nshweky

+0

@Nshweky Я отредактировал его для вас, чтобы он стал более ясным. Моя голова в замедленном темпе –

Смежные вопросы