cordova / phonegap настраивает тело div на экран в ios — xcode

#html #ios #css #cordova

#HTML #iOS #css #кордова

Вопрос:

Я новичок в cordova / phonegap и совсем недавно создал свое первое приложение. Это еще не закончено, но есть одна проблема, с которой мне действительно нужна помощь (я понятия не имею, с чего начать).

При тестировании моего приложения на симуляторе и на устройстве оно получает черные поля сверху и снизу (приложение только для альбомной ориентации). Когда я касаюсь черных границ, я могу перемещать свой контент и пытаться настроить его на экран (он больше экрана, но сохраняет пропорции). Поэтому мне приходится постоянно перемещать его вверх и вниз, чтобы я мог видеть все свое содержимое (иногда слева и справа).

Итак, как я могу сделать так, чтобы он соответствовал моему экрану. Поскольку у меня нет верхнего или нижнего колонтитула, мне просто нужно, чтобы мой body div настраивался на экран и оставался там фиксированным.

Спасибо.

Ответ №1:

Размер можно определить вручную в AndroidManifest.xml файл

В случае изменения конфигурации в ландшафтный режим действие прекращается, а затем перезапускается. Для повышения скорости и сохранения данных вы можете либо-

  1. создайте произвольный объект Java, который кэширует важную конфигурацию состояния, используя onRetainNonConfigurationInstance(), который будет вызываться между onStop() и onDestroy() . Он возвращает и объект, который может быть получен с помощью getLastNonConfigurationInstance() в методе onCreate()

  2. Аналогичный процесс можно выполнить с помощью фрагментов. Активность хостинга уничтожается и воссоздается заново, поэтому она также уничтожает фрагменты. Чтобы предотвратить это — onCreate(Bundle b){
    //code
    setRetainInstance(true);
    }
    теперь он сохраняет фрагмент, отсоединяет его, но не уничтожает, поэтому он не будет воссоздан.

  3. Также можно выполнить ручную перенастройку, чтобы избежать выключения и перезапуска. Объявите, что конфигурация изменяет ваши дескрипторы активности в «AndroidManifest.xml «. при изменении конфигурации вызывается onConfigurationChanged()

Комментарии:

1. о, извините, не понял часть ios. ознакомьтесь с Info.plist для приложения ios

2. <имя предпочтения =»ориентация» значение =»пейзаж» /> попробуйте это

3. или …<пробел: конфигурационный файл platform=»ios» parent=»UISupportedInterfaceOrientations» перезаписать=»true»> <массив> <строка>UIInterfaceOrientationLandscapeOmg</string> </array> </пробел: конфигурационный файл>

4. как я уже сказал в своем вопросе, это приложение только для ландшафта, но это была хорошая попытка. Спасибо @user3744406

Ответ №2:

Я нашел единственное решение, которое заключило сделку. Мне пришлось зайти в свой css и добавить это в свой тег body:

 position: absolute;
top: -16%;
  

Итак, мой основной раздел появился на экране, правильно расположив мой контент