UIImageView
自動レイアウトで構成されたオブジェクトがあります。ビューがそのスーパービューから一定の距離を保つように、制約を作成しました。視覚的な形式では、次のようになります。
@"V:|-[imageView]-|"
@"H:|-[imageView]-|"
しかし、下の画像の縦横比も維持したいので、に割り当てUIViewContentModeScaleAspectFit
ましたcontentMode
。
cornerRadius
関連する値を設定するまで、すべてがうまく機能していると思いましたCALayer
:
self.imageView.layer.cornerRadius = 7;
self.imageView.layer.maskToBounds = YES;
画像ビューのサイズが変更された場合、たとえば方向の変更により、ビューが取得した新しいサイズに応じて丸みを帯びた角が失われます。その理由は(下の破線cornerRadius
のフレーム) に適用されますUIImageView
が、下にある画像も考慮してサイズ変更されるためcontentMode
(下のアスタリスクのフレーム)、丸みを帯びた角は表示されなくなります。
--------------------------
| ********** |
| * * |
| * * |
| * * |
| ********** |
--------------------------
この動作を防ぐ方法はありますか?