這是一些什麼複雜的,但可以通過下面的代碼來實現:
第1步:添加以下代碼的.h RootViewController的文件。
@property (strong, nonatomic) IBOutlet UIButton *previousClick;
@property (strong, nonatomic) IBOutlet UIButton *nextClick;
第2步:將它們連接到您使用的xib或故事板。
![enter image description here](https://i.stack.imgur.com/6k8AZ.png)
第3步:添加兩個IBAction爲方法,以.m文件。
#pragma mark - IBAction Methods
- (IBAction)previousClick:(id)sender
{
[_modelController pageViewController:self.pageViewController viewControllerBeforeViewController:_dataViewController];
}
- (IBAction)nextClick:(id)sender
{
[_modelController pageViewController:self.pageViewController viewControllerAfterViewController:_dataViewController];
}
第4步:您還需要下面放線太.m文件
@interface RootViewController()
@property (readonly, strong, nonatomic) ModelController *modelController;
@property (readonly, strong, nonatomic) DataViewController *dataViewController;
@end
和綜合它們如下
@synthesize modelController = _modelController;
@synthesize dataViewController = _dataViewController;
第5步:最後,也是最後添加下面一行到- (UIPageViewControllerSpineLocation)pageViewController:(UIPageViewController *)pageViewController spineLocationForInterfaceOrientation:(UIInterfaceOrientation)orientation
方法。
_dataViewController = currentViewController;
的currentViewController的ALLOC初始化調用之後。
如果您發現添加按鈕由pageViewController隱藏使用下面的代碼在側-viewDidLoad
方法
[self.view bringSubviewToFront:self.previousClick];
[self.view bringSubviewToFront:self.nextClick];
的詳細原因將是很有益只是把他們帶到面前。按鈕是如何創建的?你是否知道當你點擊按鈕時調用該方法的事實?按鈕位於何處? –
我使用故事板在rootview控制器中創建了按鈕,並驗證通過在那裏設置斷點來調用該方法。 – vishwa
我想我知道這裏發生了什麼。由於代表與方向改變事件有關。單擊按鈕時,方向已經設置並且不會更改,因此不會調用委託。我需要找到一種方法,在沒有這個委託的情況下完成同樣的事情。 – vishwa