2009-05-23 2 views
10

Я уверен, что я сделал все шаги, чтобы правильно установить строку состояния в скрытое. Я сделал это и в файле info.plist (установив UIStatusBarHidden в булево TRUE), а также в методе applicationDidFinishLaunching в заявке делегата с помощью:Почему строка состояния STILL отображается во время Default.png?

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

А строка состояния делает шкура - только не быстро достаточно. Несмотря на шаги, предпринятые выше, когда приложение запущено, строка состояния STILL составляет , отображаемая в течение примерно секунды при отображении Default.png по умолчанию. Это выглядит липким, и я хочу убедиться, что строка состояния не отображается в любое время во время запуска приложения.

Многие приложения, которые я пробовал Спрятав строку состояния успешно (даже не отображается во время отображения default.png), но я не могу понять, как это сделать. Кто-нибудь имеет дело с этим вопросом раньше?

ответ

17

Вы уже поняли это? То, что я сделал, чтобы заставить его работать, - отредактировать файл Info.plist в TextMate, а не в Xcode. Я добавил следующие две строки:

 
<key>UIStatusBarHidden</key> 
<true/> 

Я думаю, единственное, что отличается от ответов, приведенных выше, что я использовал текстовый редактор, а не Xcode. Когда вы впоследствии посмотрите на Info.plist в Xcode, вы увидите галочку рядом с UIStatusBarHidden, а не с строкой. Вероятно, есть способ сделать это прямо в Xcode, но я не знаю, что это такое.

+0

Эй. Я никогда не решал проблему со строкой состояния, но, похоже, исправил ее, как только я настроил/установил 3.0. Теперь проблем нет. – RexOnRoids

+0

Способ, которым вы устанавливаете его в Xcode, - это открыть plist, добавить запись, щелкнуть элемент управления в редакторе plist, выбрать в всплывающем меню значение Value -> Boolean, THEN установить значение. –

+0

Статья о том же, идет все: http://iphonedevelopertips.com/user-interface/gotcha-hiding-the-status-bar.html –

8

UIStatusBarHidden должен быть установлен в true.

+0

Я не уверен, где downvotes откуда. Нет необходимости в компромиссе, оригинальный плакат был очень близок к реальному решению. Как указано в первоначальном вопросе «Я сделал это как в файле info.plist (установка UIStatusBarHidden для логического FALSE)». Все, что вам нужно сделать, это установить свойство plist «UIStatusBarHidden» в TRUE вместо FALSE. Это гарантирует, что строка состояния всегда * скрыта, даже если отображается Default.png. – sroske

+0

Недостатки - это то, что ваше предлагаемое решение не имеет ничего общего с исходным вопросом. –

+0

Erm - Хорошо, теперь я виноват. Даже не прочитал ваш комментарий достаточно тщательно. Один голос от меня, похоже, у вас действительно есть решение. Вы должны добавить больше информации в свой ответ, заявив, что это должна быть парад ключ-значение Info.plist. –

1

Я видел это на устройствах Jailbroken с использованием IOS 2.1 со старой версией Cydia. В этом случае, после обновления Cydia, работал метод info.plist + ... statusBarHidden = YES.

Альтернативно, если [application setStatusBarStyle: ...] помогает.

-isdi-

1

Я видел подобную проблему на IPod Touch 2G (3.1.3), где черный прямоугольник - те же размеры, что и в строке состояния - показывал выше Default.png.

Решение этой проблемы связано с созданием изображения 320x480 по умолчанию. PNG в отличие от его оригинального 640x960. Точным решением было сделать [email protected], используя большие размеры.

5

в info.plist есть также ключ, называемый «Строка состояния изначально скрытый», который необходимо проверить. Он будет скрывать строку состояния при загрузке default.png

+0

+1 Это реальный ответ, который позволяет отображать строку состояния снова в какой-то момент позже в приложении. – luvieere

5

Это проще, чем это. По крайней мере, в Xcode 4 вы можете просто добавить запись «Строка состояния изначально скрыта» на plist и установить ее значение YES.

status bar entry in plist

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