UIScrollView слайд-шоу - PullRequest
       2

UIScrollView слайд-шоу

1 голос
/ 31 июля 2011
UIScrollView *scrl  = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 768,1024)];
scrl.contentSize = CGSizeMake(768 * 8, 1024);

Вот определение моего UIScrollView, у меня есть свиток с 8 изображениями, каждое изображение является 768 *1024* 1004 *, как я могу сделать UIScrollView слайд-шоу, каждое изображение остается 2 секунд и слайды к следующему изображению, как я могу это сделать?

Ответы [ 2 ]

5 голосов
/ 31 июля 2011

Вы можете использовать UIImageView вместо UIScrollView.

В вашем .h файле:

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController {
    int imageId;
    UIImageView *imageView;    
}

@property(nonatomic, retain) IBOutlet UIImageView * imageView;

@end

В вашем .m файле:

@implementation ViewController

#import <QuartzCore/CAAnimation.h>


#define NUMBER_OF_IMAGES 8;

@synthesize imageView;

- (void)viewDidLoad 
{
    [super viewDidLoad];

    imageId = 0;
    [NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(changeImage) userInfo:nil repeats:YES];
}

-(void)changeImage
{
    imageId = imageId + 1;

    CATransition * trs = [CATransition animation];
    trs.duration = 1;
    [trs setType:kCATransitionPush];

    int id = imageId % NUMBER_OF_IMAGES;
    imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"image_%d.jpg", id]];
    [imageView.layer addAnimation:trs forKey:kCATransition];
}

@end

Вам нужно будет добавить QuartzCore.framework в ваш проект.

0 голосов
/ 02 января 2012

Я не дам вам никакого кода (это ВАША работа) ...

Вот как это сделать:

Иметь родительский UIScrollView, который обрабатывает подкачку - должен реализовывать метод делегата scrollViewDidScroll:

Иметь UIPageControl (используется для отслеживания того, на какой странице вы находитесь, с точки зрения кода или интерфейса)

ВАЖНО для увеличения: 1. Создайте подкласс UIScrollView и добавьте к нему UIImageView как подпредставление. 2. Разрешить прокрутку и без пейджинга. 3. Сделайте так, чтобы в этом подклассе был реализован метод делегата viewForZoomingInScrollView: (вернуть UIImageView)

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