我有一个滚动视图,可以在两个视图之间切换。这两个视图在viewDidLoad中设置。我希望有一个页面控件,可以在选择相应的视图时切换。
我看过的所有教程都很复杂。
- (void)viewDidLoad {
[super viewDidLoad];
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width * kNumberOfPages, scrollView.frame.size.height);
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.showsVerticalScrollIndicator = NO;
scrollView.scrollsToTop = NO;
scrollView.delegate = self;
CGRect pageFrame = CGRectMake(0, 0, scrollView.bounds.size.width, scrollView.bounds.size.height);
scrollView.contentSize = CGSizeMake(pageFrame.size.width * 2, pageFrame.size.height);
scrollView.pagingEnabled = YES;
view1.frame = pageFrame;
[scrollView addSubview:view1];
pageFrame.origin.x += pageFrame.size.width;
view2.frame = pageFrame;
[scrollView addSubview:view2];
}
- (IBAction)changePage:(id)sender {
}
答案 0 :(得分:1)
当用户点击页面控件以移动到下一页或上一页时,控件将发送UIControlEventValueChanged事件以供委托处理。然后,委托可以评估currentPage属性以确定要显示的页面。页面控件在任一方向上只前进一页。
将ValueChanged操作的页面控件的委托设置为控制器的changePage方法。
- (IBAction)changePage:(id)sender {
UIPageControl *pageControl = (UIPageControl *)sender;
NSInteger currentPage = pageControl.currentPage;
CGPoint offset = CGPointMake(currentPage * scrollView.frame.size.width, 0);
[scrollView setContentOffset:offset animated:YES];
}
答案 1 :(得分:0)
将int
设置为tag
的{{1}}属性,以跟踪哪一个被按下。
UIButton