效果如图,左右翻滚

关键代码
- (void)viewDidLoad
{
//contentview与scrollview的高度设置为一样,这样图片就不可以上下拖动
scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width,250)];
CGSize newSize = CGSizeMake(self.view.frame.size.width*3, 250);
[scrollView setContentSize:newSize];
[scrollView setPagingEnabled:YES];
[scrollView setShowsVerticalScrollIndicator:NO];//不显示垂直滚动条
[scrollView setShowsHorizontalScrollIndicator:NO];//不显示水平滚动条
[scrollView setDelegate:self];
[scrollView setBackgroundColor:[UIColor yellowColor]];//设置背景以区分view与scrollview
[scrollView setMaximumZoomScale:5];
[scrollView setMinimumZoomScale:0.2];
[self.view addSubview:scrollView];
//UIPageControl设置
pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(0, 200,self.view.frame.size.width, 20)];
[pageControl setHidesForSinglePage:YES];
[pageControl setUserInteractionEnabled:YES];
[pageControl setBackgroundColor:[UIColor redColor]];
[pageControl setNumberOfPages:3];
[pageControl setCurrentPage:0];
[pageControl addTarget:self action:@selector(changePage:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:pageControl];
//切换的3个页面
imageView1= [[UIImageView alloc] initWithFrame:CGRectMake(0,0,320,210)];
[imageView1 setImage:[UIImage imageNamed:@"1.jpg"]];
[scrollView addSubview:imageView1];
[imageView1 release];
imageView2= [[UIImageView alloc] initWithFrame:CGRectMake(self.view.frame.size.width, 0, 320, 210)];
[imageView2 setImage:[UIImage imageNamed:@"2.jpg"]];
[scrollView addSubview:imageView2];
[imageView2 release];
imageView3= [[UIImageView alloc] initWithFrame:CGRectMake(self.view.frame.size.width*2, 0, 320, 210)];
[imageView3 setImage:[UIImage imageNamed:@"3.jpg"]];
[scrollView addSubview:imageView3];
[imageView3 release];
[super viewDidLoad];
}
//滚动结束
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollViews{
int pageNum = fabs(scrollView.contentOffset.x/self.view.frame.size.width);
[pageControl setCurrentPage:pageNum];
NSLog(@"dddaa,%d",pageNum);
}
//滚动调用
- (void)scrollViewDidScroll:(UIScrollView *)sender{
// NSLog(@"ddd");
}
- (void)dealloc{
[scrollView release];
[imageView1 release];
[imageView2 release];
[imageView3 release];
[pageControl release];
[super dealloc];
}
//通过pageControl去改变scroll的显示内容
- (void)changePage:(id)sender{
int page = [sender currentPage];
CGRect frame = self.view.frame;
frame.origin.x = frame.size.width*page;
frame.origin.y = 0;
[scrollView scrollRectToVisible:frame animated:YES];
}
点击下载:
ScrollViewDemo.zip