我有一个viewController
,其中包含的数据将在viewController
的上半部分保持静态。下半部分包含4个按钮,4个UIViewControllers
链接到之前加载的4个按钮。在相应的按钮上单击将显示相应的UIViewController
,其余部分将被隐藏。我只是在点击按钮时使viewController
可见且不可见。
我想让它们在滑动时更改。因此,UIViewController
会随着滑动而改变,相应UIViewController
的按钮状态也会随着滑动而改变。
我没有使用故事板并使用xcode5。
答案 0 :(得分:2)
一种简单的方法 - 您可以使用UITabBarController
来处理所有这些视图控制器:https://developer.apple.com/library/ios/documentation/uikit/reference/UITabBarController_Class/Reference/Reference.html
要通过滑动更改它们 - 只需添加UISwipeGestureRecognizer
:https://developer.apple.com/library/ios/documentation/uikit/reference/UISwipeGestureRecognizer_Class/Reference/Reference.html,如下所示:
UISwipeGestureRecognizer *swipeRecognizer = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(changeTabs:)];
[self.view addGestureRecognizer:swipeRecognizer];
[swipeRecognizer release]
;
在changeTabs:
执行此操作
[self.tabBarController setSelectedViewController:nextViewController];
另一种更可行的方法是使用UIPageViewController
:https://developer.apple.com/library/ios/documentation/uikit/reference/UIPageViewControllerClassReferenceClassRef/UIPageViewControllerClassReference.html
您写道:"so the uiviewcontroller will change with the swipe and the button state for the respective uiviewcontroller will also change with swipe."
- 这很愚蠢。只需使用我建议的任一选项卡,然后删除这些按钮或使用已有页面指示符的UIPageViewController
并自行处理其逻辑