Czekam zamknięcie zakończenia na tej animacji UIView być nazywany po określonym czasie trwania, jednak wydaje się być natychmiast wypalanie ...Swift UIView animateWithDuration zamknięcie zakończenie nazywa natychmiast
UIView.animateWithDuration(
Double(0.2),
animations: {
self.frame = CGRectMake(0, -self.bounds.height, self.bounds.width, self.bounds.height)
},
completion: { finished in
if(finished) {
self.removeFromSuperview()
}
}
)
Czy ktoś doświadczony to? Czytałem, że inni mieli większy sukces, używając centrum, a nie ramki, aby przenieść widok, jednak miałem podobne problemy z tą metodą.
Gdzie można wykonać ten kod? – akashivskyy
Upewnij się, że ramka * faktycznie * zmienia się, ponieważ blok zakończenia jest wywoływany natychmiast, gdy nie ma animacji. – akashivskyy
W niestandardowej klasie UIView. Animuję widok na miejscu, aby rozpocząć od init(), następnie powyższy kod jest wywoływany, gdy kliknięcie pojawi się w dowolnym miejscu. Ramka zdecydowanie zmienia się też ... –