2

コンテンツサイズが1000x10000で、その中心はビューコントローラーの中心にあります。ボタンを押してページをめくりたい。次のコードでは、origin.xでほぼすべての数値を試しましたが、スクロールビューは何も変わりません。計算方法はわかりませんが、origin.x=300とorigin.y=100を設定すると、ビューが少し上に移動しますが、それだけです。

CGRect frame=scroller.frame;
frame.origin.x=ANY NUMBER HERE;
frame.origin.y=0;
[scroller scrollRectToVisible:frame animated:YES];

ビューを右から左に移動するように設定するにはどうすればよいですか

4

3 に答える 3

1

これを試して、

[scroller setContentOffset:CGPointMake(300, 0) animated:YES];

setContentOffset:animated: レシーバーの原点に対応するコンテンツビューの原点からのオフセットを設定します。

于 2012-12-12T23:48:22.007 に答える
0

次のように、UIScrollViewのフレームをUIViewControllerのサイズに作成する必要があります。

UIScrollView *scroller = [[UIScrollView alloc] initWithFrame:self.view.frame];

次に、スクローラーのコンテンツビューを次のように1000x10000サイズに設定します。

scroller.contentSize = CGSizeMake(1000, 10000);

contentSizeは、contentsizeがスクローラーのフレームよりも大きい限り、UIScrollviewをスクロールできるようにするものです。

于 2012-12-12T23:26:17.027 に答える
0

スクロール可能にする場合は、contentSizeをframe.sizeより大きくする必要があります。そうでない場合、スクロールするスペースがありません。
次に、scrollEnabledがYESに設定されていることを確認します(デフォルトではYESに設定されているため、変更しない限り、すでにYESに設定されています)。

于 2012-12-12T23:27:47.597 に答える