水平方向にスクロールできるスクロール ビューを作成しました。私が直面している問題は、ユーザーが一度に 1 ページだけスクロールすることですが、現時点ではユーザーがエミュレーターのスクロールビューをスクロールし、2 ページをスクロールすることです。
一度に1ページだけスクロールするようにスクロールビューを維持する方法を知っている人はいますか? 現時点では、ページングを有効にしています。
水平方向にスクロールできるスクロール ビューを作成しました。私が直面している問題は、ユーザーが一度に 1 ページだけスクロールすることですが、現時点ではユーザーがエミュレーターのスクロールビューをスクロールし、2 ページをスクロールすることです。
一度に1ページだけスクロールするようにスクロールビューを維持する方法を知っている人はいますか? 現時点では、ページングを有効にしています。
配列内にいくつかの画像を表示する必要があるとします。
[yourScroll setContentSize CGSizeMake( [arrayImages count]*320 , 420)];
[yourScroll setPagingEnabled : YES];
int incX = 0 ;
for( int i = 0; i < [arrayImages count]; i++)
{
UIImageView *imgView = [[UIImageView alloc]initWithFrame : CGRectMake(0,0,320,420)];
UIView *myView = [UIView alloc]initWithFrame : CGRectMake (incX,0,320,420);
imgView.image = [UIImage imageNamed:[NSString stringWithFormat:@"%@",[arrayImages objectAtIndex : i]]];
[myView addSubView : imgView];
[yourScroll addSubView : myView];
incX+= 320;
}
例えば:
- (IBAction)changePage:(id)sender
{
NSInteger _currentPage = self.pageControl.currentPage;
CGPoint offset = CGPointMake(_currentPage * self.scrollView.frame.size.width, 0);
[self.scrollView setContentOffset:offset animated:YES];
pageControlUsed = YES;
}
あなたは何か間違ったことをしているに違いありません。ページングを有効にしている場合は、自動的にページに合わせて配置されます (ページ サイズはスクロールビュー フレームのサイズです)。プログラムでどこかにページングしている可能性があります (pagingEnabled が true の場合は必要ありません)。
コードなしではこれ以上語ることはできません