1

何が間違っているのかわかりませんが、アプリを使用して撮ったばかりの画像を表示すると、画像が元の画像の特定の場所にズームインされ、その理由がわかりません。

画像を読み込んで表示するための私のコードを次に示します。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:imageName];
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:path]];
imageView.contentMode = UIViewContentModeScaleAspectFill;
4

2 に答える 2

1

これは、固定サイズではなく、イメージで init を割り当てるためです。あなたのイメージはあなたが思っているよりも大きく、「ズーム」のように見えます。

次のようにします。

UIImageView* yourImageView = [[UIImageView alloc]initWithFrame:CGRectMake(x, y, width, height)];
yourImageView.image = [UIImage imageWithContentsOfFile:path];
yourImageView.contentMode = UIViewContentModeScaleAspectFill;
yourImageView.clipsToBounds = YES;
于 2013-09-15T14:49:42.023 に答える
1

ビューにズームするように指示したため、画像がズームされています。

imageView.contentMode = UIViewContentModeScaleAspectFill;

平易な英語で言えば、これは画像ビューに「縦横比を調整せずにズームすることで画像をビューに合わせる」ように指示しています。

画像をズームしたくない場合は、いくつかのオプションがあります。UIImageView表示する画像と同じ縦横比であることを確認するか、コンテンツ モードを別のものに変更することができます (たとえばUIViewContentModeScaleToFill、画像が収まるように引き伸ばされるか、画像UIViewContentModeCenterが中央に配置されます)。

于 2013-09-15T14:52:00.107 に答える