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