IPhone之UIScrollView—翻页效果
转自:http://blog.sina.com.cn/s/blog_4adf31ea0100nw4a.html
UIScrollView可以产生画轴的效果,可以在手机屏中左右滑动。
初始化代码为:
mainView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, 400)];
mainView.directionalLockEnabled = YES;
mainView.pagingEnabled = YES;
mainView.backgroundColor = [UIColor blueColor];
mainView.showsVerticalScrollIndicator = NO;
mainView.showsHorizontalScrollIndicator = NO;
mainView.delegate = self;
CGSize newSize = CGSizeMake(self.view.frame.size.width * 2, self.view.frame.size.height);
[mainView setContentSize:newSize];
[self.view addSubview:mainView];
pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(0.0, 401, self.view.frame.size.width, 80)];
pageControl.hidesForSinglePage = YES;
pageControl.userInteractionEnabled = NO;
pageControl.backgroundColor = [UIColor redColor];
[self.view addSubview:pageControl];
UIView *view1=[[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height)];
view1.backgroundColor=[UIColor redColor];
[mainView addSubview:view1];
UIView *view2=[[UIView alloc] initWithFrame:CGRectMake(self.view.frame.size.width, 0.0, self.view.frame.size.width, self.view.frame.size.height)];
view2.backgroundColor=[UIColor blueColor];
[mainView addSubview:view2];
滑动的事件为:
#pragma mark -
#pragma mark UIScrollView
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
if ([scrollView isKindOfClass:[UITableView class]]) {
return;
}
int index = fabs(scrollView.contentOffset.x) / scrollView.frame.size.width;
pageControl.currentPage = index;
//index为当前页码
NSLog(@"%d",index);
}
UIScrollView可以产生画轴的效果,可以在手机屏中左右滑动。
初始化代码为:
mainView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, 400)];
mainView.directionalLockEnabled = YES;
mainView.pagingEnabled = YES;
mainView.backgroundColor = [UIColor blueColor];
mainView.showsVerticalScrollIndicator = NO;
mainView.showsHorizontalScrollIndicator = NO;
mainView.delegate = self;
CGSize newSize = CGSizeMake(self.view.frame.size.width * 2, self.view.frame.size.height);
[mainView setContentSize:newSize];
[self.view addSubview:mainView];
pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(0.0, 401, self.view.frame.size.width, 80)];
pageControl.hidesForSinglePage = YES;
pageControl.userInteractionEnabled = NO;
pageControl.backgroundColor = [UIColor redColor];
[self.view addSubview:pageControl];
UIView *view1=[[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height)];
view1.backgroundColor=[UIColor redColor];
[mainView addSubview:view1];
UIView *view2=[[UIView alloc] initWithFrame:CGRectMake(self.view.frame.size.width, 0.0, self.view.frame.size.width, self.view.frame.size.height)];
view2.backgroundColor=[UIColor blueColor];
[mainView addSubview:view2];
滑动的事件为:
#pragma mark -
#pragma mark UIScrollView
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
if ([scrollView isKindOfClass:[UITableView class]]) {
return;
}
int index = fabs(scrollView.contentOffset.x) / scrollView.frame.size.width;
pageControl.currentPage = index;
//index为当前页码
NSLog(@"%d",index);
}