を使用して、いくつかのサムネイル画像を固定サイズ(100x100)で描画しようとしていUIImageView
ます。画像ビューのフレームサイズを100x100に設定し、contentMode
をに設定しましたUIViewContentModeScaleAspectFill
。
これにより、設定したサイズで画像が描画され、画像は画像の領域を塗りつぶし、画像ビューに設定したサイズの外側にある画像の部分は切り取られます。ただし、画像は引き続き、設定した100x100サイズよりも大きくまたは小さく描画されます。
をに設定するcontentMode
とUIviewContentModeScaleToFill
、画像は正確に100x100で描画されますが、これらの寸法に合わせて変形されます。アスペクトフィルが期待どおりにクリッピングされない理由はありますか?
これが私のコードです:
_photoView = [[UIImageView alloc] initWithImage:photoImage];
_photoView.contentMode = UIViewContentModeScaleAspectFill;
[self addSubview:_photoView];
CGRect photoFrame = _photoView.frame;
photoFrame.size = CGSizeMake(100, 100);
_photoView.frame = photoFrame;
よりわかりやすくするために、ここに私が見ているもののスクリーンショットがあります。緑の四角は、私が作業しているをUIView
含んUIImageView
でいます。背景色を緑に、ビューのフレームを100x100に設定しました。テストとして、UIImageViews
サイズは50x50に設定されています。ご覧のとおり、を使用する...AspectFill
と、画像のサイズが50x50にならず、場合によっては、希望する場所からオフセットされます。を使用すると...ScaleToFill
、サイズは正しくなりますが、画像がゆがみます。