2013-04-11 3 views
1

Мы интегрируем стенд стороннего предложения в наше приложение для мобильных телефонов iOS.Стоп UIView перетаскивается вокруг экрана

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

Проблема в том, что люди могут перетаскивать вид повсюду, вместо того чтобы просто прокручивать вверх и вниз на месте. Что дает эффект шоу на скриншоте ниже:

View being dragged off screen

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

В коде интеграции у нас есть доступ к UIView для предложения и ViewController основного приложения.

Предоставлено в виде библиотеки, поэтому у меня нет доступа к какому-либо из его кода, и вы можете иметь дело только с возвращенным UIView и UIViewController, к которому я его добавляю. Другим приложениям удалось реализовать представление без горизонтальной прокрутки

Мы ищем код для применения к UIView или ViewController для предотвращения этого.

Благодаря

+1

Какой вид стены предложения? –

ответ

0

В конце концов решение было довольно простым. Оказывается, рекламный щит был UIWebView, а в режиме тестирования страница Offerwall отображала некоторые элементы, которые переполняли страницу, и, следовательно, горизонтальную прокрутку. В режиме производства проблема уходит

1

Вид offerwall вероятно содержит UIScrollView, который содержит фактическое содержание. Вы можете попробовать цикл через все подвидов и отключить прокрутку на первый взгляд прокрутки он находит:

for (UIView *view in offerwall.subviews) { 
     if ([view isKindOfClass:[UIScrollView class]]) { 
      UIScrollView *scrollView = (UIScrollView*)view; 

      scrollView.scrollEnabled = NO; 
      return; 
     } 
    } 

Это, безусловно, Hacky, но если у вас нет доступа к чему-либо другому из их кода, это может быть вашим единственным вариант.