iOS uiscrollview和pagecontrol

博客摘自http://blog.csdn.net/panyong4627/article/details/7763044


#import <UIKit/UIKit.h>

@interface ViewController : UIViewController<UIScrollViewDelegate>
@property (weak, nonatomic) IBOutlet UIPageControl *page;
@property (weak, nonatomic) IBOutlet UIScrollView *scroll;

@end

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

@synthesize page;
@synthesize scroll;

- (void)viewDidLoad
{
    [super viewDidLoad];
    CGSize size = [[UIScreen mainScreen]bounds].size;
    [scroll setContentSize:CGSizeMake(size.width * 3, size.height)];
	scroll.pagingEnabled = YES;
    scroll.delegate = self;
    scroll.showsHorizontalScrollIndicator = NO;
    UIImageView * imageview1 = [[UIImageView alloc]
                               initWithFrame:CGRectMake(0, 0, size.width, size.height)];
    imageview1.image = [UIImage imageNamed:@"1.jpg"];
    [scroll addSubview:imageview1];
    UIImageView * imageview2 = [[UIImageView alloc]
                               initWithFrame:CGRectMake(size.width, 0, size.width, size.height)];
    imageview2.image = [UIImage imageNamed:@"1.jpg"];
    [scroll addSubview:imageview2];
    UIImageView * imageview3 = [[UIImageView alloc]
                                initWithFrame:CGRectMake(size.width * 2, 0, size.width, size.height)];
    imageview3.image = [UIImage imageNamed:@"1.jpg"];
    [scroll addSubview:imageview3];
    
    page.numberOfPages = 3;
    page.currentPage = 0;
    [page addTarget:self action:@selector(pageTurn:) forControlEvents:UIControlEventValueChanged];
    
}

- (void)pageTurn:(UIPageControl *)sender
{
    CGSize viewSize = scroll.frame.size;
    CGRect rect = CGRectMake(viewSize.width*sender.currentPage, 0, viewSize.width, viewSize.height);
    [scroll scrollRectToVisible:rect animated:YES];
}

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
    [ page setCurrentPage:scrollView.contentOffset.x/scrollView.frame.size.width];
}

@end


你可能感兴趣的:(ios)