UIScrollView
一度に1 ページしかスクロールできないように制限したいと思います。
つまり、ユーザーが非常に速くフリックしても、UIScrollView
1 ページだけスクロールするように制限する必要があります。
これを行う良い方法はありますか?
UIScrollView
一度に1 ページしかスクロールできないように制限したいと思います。
つまり、ユーザーが非常に速くフリックしても、UIScrollView
1 ページだけスクロールするように制限する必要があります。
これを行う良い方法はありますか?
UIScrollView *myScrollView;
...
myScrollView.pagingEnabled = YES;
YES に設定すると、スクロール ビューはスクロール ビューの倍数で停止します。
これを実現する 1 つの方法は、まだスクロール ビューに落ち着いていない場合は、UIPageViewController
. 私は自分のアプリで 1 つを見ていますが、この機能は無料で提供されているようです。
UIScrollView では、UIScrollViewDelegate
メソッドに応答することをお勧めします。- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
現在の「ページ」をプロパティに保持し、scrollViewWillEndDragging:withVelocity:targetContentOffset:
メソッドでターゲットコンテンツのオフセットを次/前のページのみに変更できると考えていました。
実際の動作を見たい場合は、このアプローチを使用する 2012 WWDC ビデオ、スクロール ビューによるユーザー エクスペリエンスの向上があります。