UIScroll просмотреть текущую позицию в iPhone - PullRequest
0 голосов
/ 22 октября 2009

Предположим, у меня есть представление прокрутки в представлении, а размер представления прокрутки равен 320 ширине, высоте 2000 * 1001

Когда пользователь прокручивает и замедляет остановки, я хочу знать, где остановился просмотр прокрутки?

т.е. в 300px или 400px или в 600px.

Ответы [ 4 ]

4 голосов
/ 08 ноября 2009

Вы можете отследить эту лучшую прокрутку, какова координата начала координат, используя следующие два метода. Это два метода делегата, соответствующие вашему классу UIScrollView.

-

 (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)newScrollView
{
    NSLog(@"scrollViewDidEndScrollingAnimation");
    CGPoint p = scrollView.contentOffset;


    int curr= floor(p.x/320);

    NSLog(@"x=%f,y=%f,curr=%d",p.x,p.y,curr);

}
- (void)scrollViewDidEndDecelerating:(UIScrollView *)newScrollView
{

    [self scrollViewDidEndScrollingAnimation:newScrollView];

}
3 голосов
/ 22 октября 2009

Использовать scrollview.contentOffset.

3 голосов
/ 22 октября 2009

Когда представление прокрутки завершает прокрутку, оно запускает некоторые события в UIScrollViewDelegate:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView

Вы можете реализовать эти методы в делегате, чтобы узнать новый contentOffset вашего UIScrollView:

@property(nonatomic) CGPoint contentOffset
1 голос
/ 22 октября 2009

Вы можете узнать, где находится любое представление относительно его суперпредставления, посмотрев на прямоугольник его рамки. Что ты пытаешься сделать?

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