コンテンツサイズが1200x480のUIScrollViewがあります。右にスクロールすると、内容のサイズを大きくしてオフセットを設定して、すべてをスムーズにする(私は他の画像を追加したいが、それは重要ではないたった今)。したがって、基本的に、現在ビューポートにある画像は左のどこかに残り、最終的にスーパービューから削除されます。無限水平スクロールUIScrollView
今、左に向かってスクロールするときに発生する問題があります。私が行うことは、画像をコンテンツサイズの最後に移動することです(各画像ビューのorigin.xに600を追加してから、それに応じてコンテンツオフセットを設定します)。指が画面上にあり、ユーザーがドラッグすると機能します(scrollView.isTracking = YES)。ユーザーが左方向にスクロールして行くと(scrollView.isTracking = NO)、画像ビューは右に向かって速すぎる動きをし、ほとんど瞬時に消えます。誰もが、画像を素早く動かす方法を知っていて、ユーザーが手動でビューをドラッグしていなくても消えていなくても消えませんか?ここで
が水平方向にドラッグするために私のコードです:
-(void) scrollViewDidScroll:(UIScrollView *)scrollView {
CGPoint offset = self.scrollView.contentOffset;
CGSize size = self.scrollView.contentSize;
CGPoint newXY = CGPointMake(size.width-600, size.height-480);
// this bit here allows scrolling towards the right
if (offset.x > size.width - 320) {
[self.scrollView setContentSize:CGSizeMake(size.width+320, size.height)];
[self.scrollView setContentOffset: offset];
}
// and this is where my problem is:
if (offset.x < 0) {
for (UIImageView *imageView in self.scrollView.subviews) {
CGRect frame = imageView.frame;
[imageView setFrame:CGRectMake
(frame.origin.x+newXY.x, frame.origin.y, 200, frame.size.height)];
}
[self.scrollView setContentOffset:CGPointMake(newXY.x+offset.x, offset.y)];
}
}
EDIT:これは今働いている - 私はStreetScrollerを見ていたし、それは今、すべての良いことです。
しかし、私は現在、スクロールビューを拡大したいですが、viewForZoomingInScrollViewは決して呼び出されません。大きなコンテンツサイズのスクロールビューを拡大することはできませんか?
誰でもどうぞ! :) –