Как добавить функцию автоматической прокрутки для просмотра в iphone SDK? - PullRequest
0 голосов
/ 15 июня 2011

Я новичок в функции автоматической прокрутки.У меня очень длинный файл .png.я хочу, чтобы при нажатии кнопки я автоматически запускал прокрутку этого изображения.Я прошел через образец кода scrollView в SDK.но я запутался.Пожалуйста, помогите мне

Спасибо заранее Правина

Ответы [ 2 ]

4 голосов
/ 24 августа 2012
- (void) scrollView
{
    CGFloat currentOffset = scrollImage.contentOffset.x;

    CGFloat newOffset;

    if(currentOffset == 3840)
    {
        currentOffset = -320.0;

        [scrollImage setContentOffset:CGPointMake(newOffset,0.0) animated:NO];
    }

    newOffset = currentOffset + 320;

        [UIScrollView beginAnimations:nil context:NULL]; 
        [UIScrollView setAnimationDuration:2.1]; 
        [scrollImage setContentOffset:CGPointMake(newOffset,0.0)];
        [UIScrollView commitAnimations];
}
0 голосов
/ 15 июня 2011

Прокрутка достигается путем установки смещения содержимого.

Представьте себе контроллер представления, сконструированный примерно так (например, в -viewDidLoad):

// Load image.
UIImage *image = [UIImage imageNamed:@"image.png"];

// Create image view to hold the image.
imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0.0, 0.0, [image size].width, [image size].height)];

[imageView setImage:image];

// Create a scroll view that is the size of the view.
scrollView = [[UIScrollView alloc] initWithFrame:[[self view] bounds]];

// Important: If the content size is less than the scroll view frame, then it will not scroll.
[scrollView setContentSize:[image size]];

// Add to view hierarchy.
[scrollView addSubview:imageView];
[[self view] addSubview:scrollView];

Чтобы сделать прокрутку, просто сделайте это:

[scrollView setContentOffset:CGPointMake(0, 100) animated:YES];

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

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