在底部,我知道它是UITabbarController。在每个选项卡中,它有许多视图控制器,如BEAT,TOP,FUN ......每个选项卡都有不同的视图控制器。 滚动水平时,可以从BEAT变为TOP到FUN ...... 我该如何设计呢?我应该使用什么视图控制器?它看起来像UITabController中的UIPageController,但是使用UIPageController,我不知道如何用BEAT,TOP,FUN ......替换底部的点(。)。
感谢您的帮助。
答案 0 :(得分:1)
替代解决方案是在视图上添加UISwipeGesture(左/右),在滑动操作时,您可以推送或弹出视图控制器。
在ViewController.h中
@property (retain, nonatomic) UISwipeGestureRecognizer * leftSwipe;
@property (retain, nonatomic) UISwipeGestureRecognizer * rightSwipe;
在ViewController.m中
- (void)viewDidLoad
{
[super viewDidLoad];
[self setupSwipeGestures];
}
-(void)setupSwipeGestures
{
_leftSwipe=[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(next)];
[_leftSwipe setDirection:UISwipeGestureRecognizerDirectionLeft];
_rightSwipe =[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(previous)];
[_rightSwipe setDirection:UISwipeGestureRecognizerDirectionRight];
[self.view addGestureRecognizer:_leftSwipe];
[self.view addGestureRecognizer:_rightSwipe];
}
- (void) previous
{
// perform pop to get previous viewController
// i.e [self.navigationController popViewControllerAnimated:YES];
}
- (void) next
{
// perform push to get next viewController
// i.e [self.navigationController pushViewController:viewController animated:YES];
}
如果你想在每个Controller中使用上面的代码,那么你可以定义自己的viewController并粘贴上面的代码,之后继承你需要上述功能的所有viewControllers。
答案 1 :(得分:1)
您可以在标签控制器的每个标签中使用XLPagerTabStrip库。令人敬畏的库,甚至为您提供类似于Android的滑动功能,可以让您滑动单个页面部分以及保持标签属性。