Ich habe einen einfachen UIView Animationsblock. Im Block ändere ich nur das Alpha der Ansicht, aber der Rahmen der Ansicht wird auch animiert! WTF?UIView Animation animiert mehr Eigenschaften als ich es gefragt habe
Hier ist mein Code:
UIButton *button = [flowerViews objectAtIndex:index];
UIImageView *newGlowView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"grid_glow.png"]];
newGlowView.frame = CGRectMake(0, 0, 130, 130);
newGlowView.center = button.center;
newGlowView.alpha = 0.0;
[scrollView_ addSubview:newGlowView];
[scrollView_ sendSubviewToBack:newGlowView];
[UIView animateWithDuration:0.3 animations:^{
newGlowView.alpha = 1.0;
}];
Wie Sie sehen, ich bin eine neue Ansicht erstellen und zu scrollView_ hinzufügen. Ich setze Position und Alpha der Ansicht, bevor ich sie zu scrollView_ hinzufüge. Sobald es hinzugefügt wird, habe ich einen Animationsblock, um das Alpha der Ansicht von 0 bis 1 zu animieren.
Das Problem ist, die Position der Ansicht wird auch animiert! Wenn es eingeblendet wird, sieht es so aus, als würde es von einem ursprünglichen Frame von CGRectZero zu dem animieren, den ich ihm zugewiesen habe.
Offenbar sollten nur die Eigenschaften innerhalb des Animationsblocks animiert werden, richtig? Ist das ein Fehler? Fehle ich etwas?
Danke!
Wird das Ganze aus einem Animationsblock oder innerhalb eines Ereignisses aufgerufen, das sich innerhalb eines Animationsblocks befindet, wie die Delegate-Methoden des Autorotate-View-Controllers. – mattjgalloway
Ja ist es. Kannst du das als Antwort posten, damit ich es akzeptieren kann? Ich habe das gerade selbst herausgefunden (duh) – CharlieMezak
Fertig! Freut mich, dass du es gelöst hast. – mattjgalloway