たとえば、9つのグリッドがあります。それはこのように注文します:
7 8 9
4 5 6
1 2 3
私がその位置5
にいる場合、ユーザーは3
1つのスクロールを使用してスクロールできるようになります。ただし、スクロールを6
のみに制限してから、に移動する3
か、にスクロールしてから2
に移動し3
ます。スクロール3
のみを許可していません。
それを実装する方法について何かアイデアはありますか?
たとえば、9つのグリッドがあります。それはこのように注文します:
7 8 9
4 5 6
1 2 3
私がその位置5
にいる場合、ユーザーは3
1つのスクロールを使用してスクロールできるようになります。ただし、スクロールを6
のみに制限してから、に移動する3
か、にスクロールしてから2
に移動し3
ます。スクロール3
のみを許可していません。
それを実装する方法について何かアイデアはありますか?
独自のロジック + 以下の UIScrollview の 3 つのプロパティは、目標を達成するのに役立ちます。
yourScroller.directionalLockEnabled = YES;
yourScroller.pagingEnabled = YES;
[yourScroller scrollRectToVisible:yourFrame animated:YES];
例コード:
-(void)changeAndIncrementBottomScrollerPage{
//maximum number of pages is 3
if (3 != UpAndDownPager.currentPage) {
int page = UpAndDownPager.currentPage + 1;
CGRect frame = scroller.frame;
frame.origin.y = frame.size.height * page;
if (0 != sidePager.currentPage) {
frame.origin.x = frame.size.width * (sidePager.currentPage);
}
[yourScroller scrollRectToVisible:frame animated:YES];
UpAndDownPager.currentPage = UpAndDownPager.currentPage + 1;
}
}