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

[PhoneGap] предотвращает отказ только в главном окне

Теперь я использую последнюю версию PhoneGap (3.4) и iOS7.1 beta3, и я обнаруживаю, что тело (возможно, элемент UI View) имеет плохое свойство отскока, как показано на рисунке ниже, и я хочу отключить Это. Я попытался выполнить поиск на веб-сайте, и я нашел только <preference name="DisallowOverscroll" value="false" />
работает для меня, НО я считаю, что это предпочтение делает отказ отключен во всех элементах моего приложения, и я просто хочу отключить отскок тела так же, как на рисунке ниже, и продолжать отскок в элементах div.

Есть ли способ решить эту проблему?

e

4b9b3361

Ответ 1

Есть способ, которым я использовал это. но он не является обычным, поскольку он имеет дело с внутренним кодированием. В MainViewController существует метод webViewDidFinishLoad. Включить это theWebView.scrollView.bounces = НЕТ;

внутри этого метода.

- (void)webViewDidFinishLoad:(UIWebView*)theWebView
{
    // Black base color for background matches the native apps
    theWebView.backgroundColor = [UIColor blackColor];
    theWebView.scrollView.bounces= NO;
    return [super webViewDidFinishLoad:theWebView];
}

Поскольку это родной код ios, так что это будет работать в любом рассылке телефонных разговоров/кордовы.

Ответ 2

Вам нужны оба этих параметра в файле config.xml:

<preference name="webviewbounce" value="false" />
<preference name="DisallowOverscroll" value="true" />

Затем вы можете включить прокрутку прошивки в стиле iOS на вложенных контейнерах с помощью:

.scrollingArea
{
  width: 100%;
  height: (some-fixed-height);
  overflow: hidden;
  overflow-y: scroll !important;
  -webkit-overflow-scrolling: touch;
}

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