Чи є спосіб приховати рядок стану при відображенні заставки в iPhone, а потім знову показати в програмі?
Відповіді:
Я майже впевнений, що якщо для вашого файлу Info.plist встановлено Status bar is initially hiddenзначення YES, він не відображатиметься під час завантаження вашої програми. Після завантаження програми ви можете знову показати рядок стану, використовуючи setStatusBarHidden:animated:метод UIApplication .
[[UIApplication sharedApplication] setStatusBarHidden:NO];ввімкнути - application: didFinishLaunchingWithOptions:
Правильним ключем у .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.
сподіваюся, це було вам корисно.
[[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);
setStatusBarHidden:withAnimationочікує typedef NSInteger UIStatusBarAnimationдля другого аргументу, а не BOOL. Замість NO, useUIStatusBarAnimationNone
Перегляд -> Тип списку властивостей -> iPhone Info.plist. Тепер зробіть новий пункт із позначкою "Рядок стану спочатку приховано".
Наслідуючи відповідь Дейва, клавіша "Рядок стану спочатку прихована" не працювала для мене під iOS 4.3, АЛЕ клавіша "UIStatusBarHidden", а потім встановивши для типу Boolean і встановивши прапорець, це зробило трюк.
Ця стаття розробника залучила мене до клавіш Info.plist, а потім розробила еквівалентний ключ, щоб приховати це було не надто складно.
Цікаво, що "UIStatusBarStyle" повинен використовувати ім'я перерахування як рядок для його роботи.
Для Xcode 5 і вище ви можете просто встановити:
Переглянути вигляд рядка стану на основі контролера на NO
У вашому info.plist або на вкладці інформація у вашому основному проекті.

застаріло
setStatusBarHidden:(BOOL) animated:(BOOL)
є правильним
setStatusBarHidden:(BOOL) withAnimation:(UIStatusBarAnimation)
UIStatusBarAnimation, яка може бути:
UIStatusBarAnimationNone або UIStatusBarAnimationFade або UIStatusBarAnimationSlide
Це спрацювало для мене у списку info.plist:
"View controller-based status bar appearance" -> set to NO
Для редакторів XML ~ додати до першого дочірнього файлу
<key>UIStatusBarHidden</key>
<true/>