Wie kann ich die Größe eines CAGradientLayers nach dem Drehen ändern?

Ich füge einCAGradientLayer zu einer Ansicht. Wenn die Größe der Ansicht automatisch geändert wird (z. B. nach einer Drehung), wird die Größe der Verlaufsebene nicht geändert. Kann der Verlauf so eingestellt werden, dass die Größe der Ansicht automatisch angepasst wird? Beachten Sie auch, dass ich in der Ansicht Einschränkungen für das automatische Layout verwende.

Folgendes mache ich:

    CAGradientLayer *gradientLayer = [CAGradientLayer layer];
    gradientLayer.frame = CGRectMake(0.0, 0.0, frame.size.width, frame.size.height);
    gradientLayer.colors = [NSArray arrayWithObjects:
                       (id)[[UIColor colorWithRed:255.0/255.0f green:255.0/255.0f blue:255.0/255.0f alpha:1.0f] CGColor],
                       (id)[[UIColor colorWithRed:233.0/255.0f green:233.0/255.0f blue:233.0/255.0f alpha:1.0f] CGColor], nil];

    [self.layer insertSublayer:gradientLayer atIndex:0];

Antworten auf die Frage(2)

Ihre Antwort auf die Frage