Animation wird nicht mehr ausgeführt

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Animation wird nicht mehr ausgeführt

    Hallo,

    ich habe folgende Situation... in einer View befindet sich eine TableView die äußere View besitzt einen Constraint zum Objekt das über der View ist (Top Abstand = 0).

    Wenn ich die constant property von dem Constraint animieren möchte also den Abstand von 0 auf z.B. 100) dann wird keine Animation gezeigt... viel mehr wird DIREKT von 0 auf 100 gesetzt.
    Wenn ich die TableView aus der View herausnehme und deren Abstand/Top Constraint animiere geht alles.

    code:

    Quellcode

    1. [UIView animateWithDuration:0.3 delay:0 options:UIViewAnimationOptionCurveEaseIn animations:^(void)
    2. {
    3. _verticalSpaceTableTop.constant = _boxHeightConstraint.constant;;
    4. } completion:nil];
  • macmoonshine schrieb:

    Im Animationsblock solltest Du setNeedsLayout aufrufen. Die Constraint kannst Du auch außerhalb ändern.


    Danke für die fixe Antwort, aber irgendwie stelle ich mich zu doof an scheinbar... habe jetzt auf die ContainerView den setNeedsLayout gemacht aber es bleibt unverändert :-/

    Das seltsame ist ja ... wenn ich die Zeit der animation auf 10 Sekunden stelle ist sie trotzdem in 0 Sek vorbei

    UPDATE:
    jetzt klappts -> es war nicht setNeedsLayout sondern layoutIfNeeded .... aber klingt ja ähnlich ;) Danke trotzdem für die richtige Richtung :)

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von raegtime ()