UISegmentedControlなどを使ってUIPageViewControllerのページを切り替えたい場合があります。
そんな時、現在の位置を取得する必要性があるのですが、どうすればいいのだろうか?
syncing UIPageViewController with UISegmentedControl logic issue
を読むと下のようにすればおkみたいです。
//NSUInteger index; - (void)pageViewController:(UIPageViewController *)pageViewController willTransitionToViewControllers:(NSArray *)pendingViewControllers{ if([pendingViewControllers count] > 0) { index =[(UIViewController*)[pendingViewControllers objectAtIndex:0] pageIndex]; } } - (void)pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed{ if(finished && completed && [previousViewControllers count] > 0){ segmentedControl.selectedSegmentIndex = index; } }実際に試したところ、これでいけました!!
0 コメント:
コメントを投稿