Подтвердить что ты не робот

Как удалить строку состояния iOS с помощью сборки Phonegap?

Можно ли избавиться от строки состояния в iOS7 при использовании Phonegap Build 3.1? Я могу удалить строку состояния при создании локально в Xcode, но как только я попробую создать Phonegap Build, он снова появится.

  • Есть ли предпочтение конфигурации для полного удаления строки состояния?
  • Если нет, возможно ли наложить панель состояния поверх представления приложения и установить ее на прозрачный фон?

Я не хочу, чтобы строка состояния удаляла вид приложения 20px, что сейчас происходит.

4b9b3361

Ответ 1

Как из Phonegap 3 вы можете настроить plist файлы через config.xml.

код:

<gap:config-file platform="ios" parent="UIViewControllerBasedStatusBarAppearance" overwrite="true">
    <false/>
</gap:config-file>

Ответ 2

Добавьте эту функцию в файл MainViewController.m:

//fix not hide status on ios7
- (BOOL)prefersStatusBarHidden
{
    return YES;
}

Ответ 3

Обычно вы редактируете файл info.plist и добавляете этот ключ:

 <key>UIViewControllerBasedStatusBarAppearance</key><false/>

Но поскольку вы не можете сделать это при сборке, вам нужно будет добавить плагин:

https://github.com/phonegap-build/StatusBarPlugin/blob/master/README.md

И затем:

StatusBar.hide();

Ответ 4

щелкните файл "projectname-Info.plist" в корневой папке проекта XCode, вы увидите с пользовательским интерфейсом, в котором вы можете увидеть записи ключей и значений, вы можете добавлять/удалять ключи, добавьте новый ключ, просто найдите "Строка состояния изначально скрыта" и установите "ДА" в качестве значения.

Ответ 5

Я использую следующее в файле config.xml, который полностью удаляет строку состояния, проверенную на iOS 7.0.3 и 7.0.4, Phonegap версии 3.0.0, если это помогает.

    <preference name="fullscreen" value="true" />

Ответ 6

С Кордовой мне пришлось сделать 2 вещи.

  • Когда я создаю с XCode, я устанавливаю в Target- > Statusbar style значение → HIDDEN это скроет строку состояния при запуске на вашем заставке.

  • Вам нужно скрыть это также на устройстве, готовом к подключению. В противном случае он снова появится. Для этого установите плагин:

cordova plugin add org.apache.cordova.statusbar

и назовите это на deviceready:

StatusBar.hide();

Ответ 7

Просто установите плагин состояния (я использую Кордову 5.x):

cordova plugin add [email protected]

В вашем коде просто указывается его глобальная переменная и используйте .hide():

StatusBar.hide()

Ответ 8

Это сработало для меня:

<preference name="fullscreen" value="true" />

Я работаю над Android.

Ответ 9

Я ответил на это для удаления строки состояния в целом в вашем предыдущем вопросе

Существенная часть:

Я получил это, чтобы прекрасно работать в Cordova 3.6 + iOS 7.1. И учитывая, что у iOS 7 и 8 каждый из них имеет 50% доли рынка, этого решения должно быть достаточно.

Плагин Я использую: org.apache.cordova.statusbar

Вместо использования StatusBar.hide() я использовал:

var hideSb = function(){
//        StatusBar.hide;
        cordova.exec(null, null, 'StatusBar', 'hide', ['Ehi', 'You']);
    };