1. ホーム
  2. iphone

[解決済み] CALayersがUIViewの境界変更時にリサイズされない。なぜですか?

2022-11-03 12:22:16

質問

私は UIView があり、そこには約 8 種類の CALayer サブレイヤーが追加されています。 もし ビューの境界を変更すると (アニメーション)すると、ビュー自体が縮小します(確認したのは backgroundColor で確認)、しかし サブレイヤのサイズは変更されません。 .

これを解決するにはどうしたらよいでしょうか。

どのように解決するのですか?

私はSolinが使ったのと同じ方法を使いましたが、そのコードにはタイプミスがあります。 メソッドはこうあるべきでしょう。

- (void)layoutSubviews {
  [super layoutSubviews];
  // resize your layers based on the view's new bounds
  mylayer.frame = self.bounds;
}

私の目的では、サブレイヤーは常に親ビューのフルサイズであって欲しかったのです。そのメソッドをビュークラスに置いてください。