Вращая UIWebView с преобразованием, частично закрывая экран, как заставить его прикрепляться к экрану? - PullRequest
1 голос
/ 12 февраля 2010

У меня есть портретный UIWebView размером 320x416, заполняющий вид UIViewController. У меня также есть кнопка поворота на 90 градусов, которая будет преобразовывать UIWebView на 90 градусов при каждом касании кнопки. Код в основном:

webView.transform = CGAffineTransformMakeRotation(touches%4 * M_PI/2.0);

После поворота на 90 градусов измененный ландшафт UIWebView выходит за левый и правый края экрана. В процессе применения преобразования iPhone OS изменила рамку UIWebView с {{0,0}, {320,416}} на {{-48,48}, {416,320}}. У меня нет проблем с этим.

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

Что заставляет вид отскочить назад за пределы экрана? Другими словами, что мне нужно настроить, чтобы позволить левому или правому краю прилипнуть к экрану и оставаться видимым (очевидно, только по одному за раз)?

Спасибо.

1 Ответ

0 голосов
/ 12 февраля 2010

Насколько я понимаю, что вы сделали в своем проекте, вы видите нормальное поведение любого окна прокрутки в iPhoneOS. То есть ваш UIWebView достаточно широк, чтобы содержать весь отображаемый HTML-контент, поэтому, когда он будет перемещаться при перетаскивании, он возвращается в исходное положение при отпускании. Тот факт, что UIWebView шире экрана из-за того, что вы повернули его, но не изменили его размер, означает, что вы не можете видеть весь HTML-контент, но с точки зрения UIWebView все видно поэтому он не позволяет правильно прокрутить его, он просто подпрыгивает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...