як приховати рядок стану, коли в iphone з'являється заставний екран?


Відповіді:


191

Я майже впевнений, що якщо для вашого файлу Info.plist встановлено Status bar is initially hiddenзначення YES, він не відображатиметься під час завантаження вашої програми. Після завантаження програми ви можете знову показати рядок стану, використовуючи setStatusBarHidden:animated:метод UIApplication .


1
такої опції немає в info.plist.is є спосіб додати її вручну
Rahul Vyas

3
@Rahul виділіть останній рядок у файлі, а потім натисніть кнопку з плюсом у правому кінці рядка. Потім наберіть це в собі.
Дейв ДеЛонг,

2
Метод повторно показує рядок стану зараз, setStatusBarHidden: withAnimation:
SargeATM

2
Якщо ви хочете додати його вручну, ви можете відредагувати список у текстовому редакторі, як BBEdit, і додати рядки: <key> UIStatusBarHidden </key> <true /> трохи вище рядка </dict>. Або в Xcode клацніть правою кнопкою миші на списку та виберіть Відкрити як ... Вихідний код та відредагуйте його як текст.
JScarry

9
"Після того, як ваша програма завантажиться, ви зможете повторно показати рядок стану" Просто для уточнення, якщо хтось заплутався, безпечно [[UIApplication sharedApplication] setStatusBarHidden:NO];ввімкнути - application: didFinishLaunchingWithOptions:
Райан Романчук

48

Правильним ключем у .plist є "UIStatusBarHidden" і зробіть перевірку правою стороною. Він стане "Рядок стану спочатку прихований", а потім автоматично. На моїй практиці ви можете контролювати показ / приховування панелі стану в будь-якому місці, коли сховати:

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];
[UIApplication sharedApplication].keyWindow.frame=CGRectMake(0, 0, 320, 480); //full screen.

коли шоу:

[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:NO];
[UIApplication sharedApplication].keyWindow.frame=CGRectMake(0, 20, 320, 460); //move down 20px.

сподіваюся, це було вам корисно.


Для динамічного встановлення розміру CGRectMake для будь-якого типу iPhone: [[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:NO]; float width = ((UIScreen *)[UIScreen mainScreen]).bounds.size.width; float height = (((UIScreen *)[UIScreen mainScreen]).bounds.size.height - 20); [UIApplication sharedApplication].keyWindow.frame = CGRectMake(0, 20, width, height);
reinaldoluckman

UIApplication setStatusBarHidden:withAnimationочікує typedef NSInteger UIStatusBarAnimationдля другого аргументу, а не BOOL. Замість NO, useUIStatusBarAnimationNone
користувач

23

Перегляд -> Тип списку властивостей -> iPhone Info.plist. Тепер зробіть новий пункт із позначкою "Рядок стану спочатку приховано".


6

Наслідуючи відповідь Дейва, клавіша "Рядок стану спочатку прихована" не працювала для мене під iOS 4.3, АЛЕ клавіша "UIStatusBarHidden", а потім встановивши для типу Boolean і встановивши прапорець, це зробило трюк.

http://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/ AboutInformationPropertyListFiles.html#//apple_ref/doc/uid/TP40009254-SW4

Ця стаття розробника залучила мене до клавіш Info.plist, а потім розробила еквівалентний ключ, щоб приховати це було не надто складно.

Цікаво, що "UIStatusBarStyle" повинен використовувати ім'я перерахування як рядок для його роботи.


6

Для Xcode 5 і вище ви можете просто встановити:

Переглянути вигляд рядка стану на основі контролера на NO

У вашому info.plist або на вкладці інформація у вашому основному проекті.

Приклад налаштувань інформації в xcode


3

напишіть цей 1 рядок у свій основний метод .m viewDidload

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];

або виберіть файл info.plist із папки файлів, що підтримують проект, у робочій області

встановіть statusbarinitialyhidden на YES


2

застаріло

setStatusBarHidden:(BOOL) animated:(BOOL) 

є правильним

setStatusBarHidden:(BOOL) withAnimation:(UIStatusBarAnimation)

UIStatusBarAnimation, яка може бути:

UIStatusBarAnimationNone або UIStatusBarAnimationFade або UIStatusBarAnimationSlide



1

Додати Status bar is initially hiddenдо YESу info.plistфайл. Це спрацювало для мене.

рядок стану прихований


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.