Я считаю, что на самом деле вы ищете UIScrollView с pagingEnabled, установленным в YES. Вы можете оставить вид прокрутки как вид над обычным UITabBar. Вы будете использовать UIPageControl, чтобы получить маленькие точки. Вы можете обновлять его программно, когда UIScrollView прокручивает страницу, реализуя соответствующий метод делегата в представлении прокрутки, например, -scrollViewDidScroll:.
Предположим, у вас есть два ivars: scrollView и pageControl. Когда вы знаете, сколько страниц будет иметь ваше представление прокрутки, вы можете установить размер содержимого scrollView. Он должен быть кратным границам scrollView. Например, если число страниц является статическим, вы можете жестко закодировать его в -viewDidLoad ...
- (void)viewDidLoad {
// Any other code.
scrollView.pagingEnabled = YES;
scrollView.contentSize = CGSizeMake(scrollView.bounds.size.width * 3, scrollView.bounds.size.height); // 3 pages wide.
scrollView.delegate = self;
}
Затем, чтобы обновить ваши маленькие точки ...
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
CGFloat pageWidth = scrollView.bounds.size.width;
NSInteger pageNumber = floor((scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
pageControl.currentPage = pageNumber;
}