3

ここ数日で Objective C の作業を開始しましたが、uiscrollview を理解するのに本当に苦労しています。画面のサイズよりも大きい画像の周りでビューを移動させ、画面をタップするたびにズームイン/ズームアウトしたい。いくつかの初期のテストを試すために、以下に簡単なコード シーケンスを書きました。(2) とコメントされたコードは機能し、ビルドおよび実行後に短いアニメーションが表示されますが、(1) は表示されません。画像はただそこに座って動かない。同じズームレベルで移動するだけでなく、画像の小さな部分にズームしたいので、問題である zoomToRect を使用してスクロールがまったく機能することがわかります。

これがどのように機能するかについて、何か基本的なことを誤解していると確信しています。誰かが私が間違っている場所を教えてもらえますか (私はまだこれをクラス/メソッドにコーディングしていません) - zoomToRect が実際にどのように機能するかを感じようとしているだけです。

UIImage *myFirstImage = [UIImage imageNamed:@"page.jpg"];

UIScrollView * myFirstScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 360, 480)];

[myFirstScrollView setContentSize:CGSizeMake(myFirstImage.size.width, myFirstImage.size.height)];

UIImageView *myFirstImageView = [[UIImageView alloc] initWithImage:myFirstImage];

[myFirstImageView setFrame:CGRectMake(0, 0, myFirstImage.size.width, myFirstImage.size.height)];

[myFirstScrollView addSubview:myFirstImageView];

[self.view addSubview:myFirstScrollView];

// 1

[myFirstScrollView zoomToRect:CGRectMake(300, 300, 360, 480)
    animated:YES];  // THIS DOESN'T WORK

// 2

[myFirstScrollView scrollRectToVisible:CGRectMake(300, 300, 360, 480) 
    animated:YES]; // THIS DOES WORK
4

1 に答える 1

0

これがあなたに役立つかもしれない答えです

UIScrollViewのコンテンツサイズ

スクロールビューのcontentSizeは画像サイズと同じです。したがって、ズームスケールがゼロの場合、スクロールしません。

SOリンクをチェックアウトしてください。それが役に立ちます。

于 2012-08-03T15:29:17.780 に答える