2010-01-10 2 views
17

Каков наилучший способ немедленно остановить торможение UIScrollView в iPhone 3.0?Стоп-торможение UIScrollView

Я хотел бы сохранить замедление UIScrollView до тех пор, пока оно не прекратится или пользователь не выполнит определенное действие, что бы ни случилось первым.

Спасибо!

+0

Привет, вы уверены, что хотите что-то подобное? поведение приложения, подобное этому, будет отклонено Apple точно. –

+0

Вы хотите сказать, что после того, как пользователь щелкнет прокруткой и прокрутит его, вы хотите остановить просмотр от прокрутки в ответ на что-то еще, как если бы пользователь положил палец на него, чтобы остановить его? – Nimrod

+0

Хенрик: Да. Это не должно вызывать отклонения в контексте, в котором я нуждаюсь. – hpique

ответ

15

Непроверено предложение придумать :)

Когда событие кнопки крана поймана, вы читали, что [Scrollview contentOffset] .x есть, и установите смещение этого значения с анимацией OFF.

+0

Он работает и выглядит нехитрый способ сделать это. Однако по какой-то неизвестной причине индикаторы прокрутки вспыхнули неправильно. Следующий код останавливает замедление и также избегает вышеупомянутого визуального эффекта: \t myScrollView.showsHorizontalScrollIndicator = NO; \t myScrollView.showsVerticalScrollIndicator = NO; \t [myScrollView setContentOffset: myScrollView.contentOffset animated: NO]; \t myScrollView.showsHorizontalScrollIndicator = YES; \t myScrollView.showsVerticalScrollIndicator = YES; Уродливый код. – hpique

+0

Рад, что это сработало :) «Прокрутка индикаторов прокрутки в неправильном месте» означает, что полосы прокрутки не были на правой стороне и внизу? Я считаю, что у вас [scrollView setPagingEnabled: YES]; и это может быть немного запутать scrollView. ScrollView: «Настройки говорят, что прокручиваются до следующей страницы и рисуют полосы прокрутки по координатам x и y». Вы: «Прекратите то, что вы делаете, и выясните, для себя, где рисовать полосы прокрутки!». Я только что сделал что-то подобное, где я сделал scrollView, который привязан к каждому 80 px, но я использовал анимацию: YES, и это может дать ему немного времени для настройки? – RickiG

+3

[scrollView setContentOffset: offset animated: NO] работает для меня в iOS 4.2. –

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