14

UIImageView自動レイアウトで構成されたオブジェクトがあります。ビューがそのスーパービューから一定の距離を保つように、制約を作成しました。視覚的な形式では、次のようになります。

@"V:|-[imageView]-|"
@"H:|-[imageView]-|"

しかし、下の画像の縦横比も維持したいので、に割り当てUIViewContentModeScaleAspectFitましたcontentMode

cornerRadius関連する値を設定するまで、すべてがうまく機能していると思いましたCALayer

self.imageView.layer.cornerRadius = 7;
self.imageView.layer.maskToBounds = YES;

画像ビューのサイズが変更された場合、たとえば方向の変更により、ビューが取得した新しいサイズに応じて丸みを帯びた角が失われます。その理由は(下の破線cornerRadiusのフレーム) に適用されますUIImageViewが、下にある画像も考慮してサイズ変更されるためcontentMode(下のアスタリスクのフレーム)、丸みを帯びた角は表示されなくなります。

--------------------------
|       **********       |
|       *        *       |
|       *        *       |
|       *        *       |
|       **********       |
--------------------------

この動作を防ぐ方法はありますか?

4

2 に答える 2