2014-11-25 5 views
1

У меня есть средство просмотра документов, которое имеет один UIView (страница) в качестве подсмотра «scrolledView» (UIView) UIScrollView. Например, страница имеет больше подзаголовков, UIButtons и UITextFields.Ошибка: взаимодействие пользователя отключено в нижних частях UIScrollView

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

В некоторых случаях мне необходимо программно настроить ContentSize для просмотра прокрутки и рамки прокрученного представления (чтобы текстовые поля в нижней части страницы можно было перемещать над клавиатурой).

Также (я думаю) Я правильно масштабирую координаты для contentSize и рамки прокрученного вида с помощью масштабирования в виде прокрутки.

Обычно все работает так, как должно.

Это проблема:

В некоторых редких случаях, после того, как я срабатывание масштабирования, нажав «Далее» на клавиатуре, кнопку и текстовые поля в нижней части страницы, не больше не реагируйте на мое прикосновение. (Обычно это около 10% или около того). Те, что выше, любят, как должны.

Может ли кто-нибудь дать мне какие-нибудь подсказки, что искать?

Я видел это на iOS 7 и iOS 8, более старые версии я не знаю.

+0

У вас есть четкие представления, которые могут быть поверх этой части содержимого scrollview? – Rayfleck

+0

@ Rayfleck Нет, но это могло привести к поведению, я согласен. –

+0

Если вы используете Xcode 6, используйте отладчик вида, чтобы проверить, что происходит на самом деле. – chriszumberge

ответ

1

Похоже на некоторые проблемы, вызванные перенастройкой содержимого и кадра прокрученного представления внутри - (void)scrollViewDidZoom:(UIScrollView *)scrollView Затем другие части изменили те же свойства, например, в блоках завершения анимации, и возможно, что значения оказались неправильными.

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

1

Я знаю его очень поздно, но это могло бы помочь кто-то, кто может иметь такую ​​же проблему. Я только что придумал ту же проблему, и это был единственный вопрос, который соответствовал моей проблеме. В конце концов я решил это.

Похоже, что взаимодействие пользователя разрешено только для указанной высоты кадра. Итак, я решил это, увеличив высоту frame, который встроен под scrollview.

 Смежные вопросы

  • Нет связанных вопросов^_^